北京邮电大学信息与通信工程学院
时间复杂度:o(n)
2.2.5通讯录的修改
当用户要进行修改用户操作时,会在主函数输入要修改用户的ID,调用查询模块,若用户存在,系统会显示找到的用户信息,然后要求依次输入该用户新的的编号,姓名,性别,手机号,地址,输入这些后,用户信息被修改
C++实现: //通讯簿修改
void ContactBook::Modify(DataType a,int i) { DataType * p=Get(i); //按ID找到要修改的用户 * p=a; //修改用户的个人数据 }
时间复杂度:o(n)
2.2.6通讯录的遍历显示
用户选择输出通讯录,系统会依次输出所有用户的信息 输出的基本思想是:只要将表头的指针赋给一个指针变量p,然后用p向后扫描,直到表尾,p为空值。
C++实现: //通讯簿遍历
void ContactBook::PrintList() { Node * p=front->next; cout<<\您的通讯簿信息如下:\ cout<<\ while(p) { cout<
时间复杂度:o(n)
2.2.7通讯录的析构
通讯录的析构即为单链表的析构,比较简单
C++实现: //析构函数
第5页
北京邮电大学信息与通信工程学院
ContactBook::~ContactBook() { Node *p=front; while(p){ front=p; p=p->next; delete front; } }
时间复杂度:(n)
2.3 其他
3. 程序运行结果
主函数流程图: 建立
测试截图: 1.建立通讯簿
开始 创建通讯簿类对象 初始化 添加 查找 删除 修改 查看 退出 否 是否退出 是 结束 第6页
北京邮电大学信息与通信工程学院
2.添加新用户
3.查找用户
第7页
北京邮电大学信息与通信工程学院
4.删除用户
第8页