1、PhoneBook实验报告电子科技大学 计算机 学院标 准 实 验 报 告(实验)课程名称 数据结构与算法分析 电子科技大学教务处制表电 子 科 技 大 学第一次独立项目 1、实验项目名称:电话号码本二、实验要求1.创建电话号码本可以存储每个人的(姓名,地址,电话号码),一个人可以有多个电话号码,但所有电话号码不能有重复;2.可以根据电话号码对人的信息进行排序;3.可以根据姓名查询这个人的所有电话号码和地址;如果查询失败,则询问是否添加这个人的信息到电话号码本中,如果”Yes”,则根据输入的姓名,电话号码,4.地址等信息添加到电话号码本程序中;5.可以根据电话号码查询对应的人的信息:姓名和地址
2、,并删除或修改该人的信息;6.要求查询和排序速度尽量快三、具体分工蒋程:安卓代码的编写,编写部分单链表的功能,优化了部分数据结构代码。孙翔宇:完善了单链表的功能,编写了hash表,优化了数据结构的算法。赵毅卓:测试项目功能,对算法的选择提出宝贵意见,撰写了实验报告。注:项目较大较复杂,每位同学无法做到具体而清晰的分工,每人均有参与代码的编写,测试,以及自己负责部分报告的编写,故希望老师酌情给分。四、实验步骤1.数据结构分析见附件2.算法分析与设计 见附件3.算法时间复杂度分析见附件4.核心程序(1)打包的应用:PhoneBook-1.1.apk(2)项目源码:phoneBookmainjava
3、compigrangephonebook(3)数据结构源码:phoneBookmainjavacompigrangephonebooklist external- library : greenDao (数据库框架)5.测试结果:一. 主要界面 电话本软件界面设计简洁,容易操作。1. 右下角加号按钮用于添加联系人。2. 右上角按钮包含排序,按号码查找,按姓名查找三个功能。二. 操作过程1. 添加联系人(主界面右下角加号按钮)新建联系人中姓名,电话号码,地址为必填项,不填时会弹出提醒。座机号码和其他号码为选填项。 地址为空提醒 电话为空提醒成功建立后联系人信息将会出现在主界面上并且可以通过点击来
4、查看该联系人信息。 选填其他联系方式 不填其他联系方式2. 排序在添加联系人后,进行排序操作则会按照电话号码大小对联系人重新排序。主界面排序前主界面排序后3. 按号码/姓名查找在右上角功能中可按照电话号码查找当查找成功时会直接跳入该联系人信息页面当查找失败时:会提示未找到联系人并询问是否创建,选择是时会跳入创建联系人页面,并且保留查找时输入的信息4. 删除操作在主界面,向左滑动联系人的名字可以将其删除。并且电话本有存储功能,退出应用再次进入保留编辑的信息。三. 对异常操作的处理1. 创建联系人时的异常输入已出现过的电话号码或姓名会弹出提示输入格式不正确的电话号码时会弹出提示五分析与探讨本实验是运用java程序设计语言,在基于安卓环境下进行的软件开发,完成了一个完整的电话号码本的项目,主要数据结构均为小组成员自主实现。六总结及心得体会: 在页面设计上努力做到简洁而功能齐全,在程序上努力做到应对各种不同情况。程序满足健壮性要求,对异常输入的处理和繁重数据的处理方面完善。这次的实验让我们认识到程序的编写要着眼细节,不能放过任何一种情况。七对本实验过程及方法、手段的改进建议:附源代码见附件 报告评分: 指导教师签字: