CN104050048B - 冗余联系人记录清理方法和系统 - Google Patents
冗余联系人记录清理方法和系统 Download PDFInfo
- Publication number
- CN104050048B CN104050048B CN201310084450.9A CN201310084450A CN104050048B CN 104050048 B CN104050048 B CN 104050048B CN 201310084450 A CN201310084450 A CN 201310084450A CN 104050048 B CN104050048 B CN 104050048B
- Authority
- CN
- China
- Prior art keywords
- contact person
- person record
- record
- group
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
一种冗余联系人记录清理方法,包括以下步骤:读取联系人记录集;获取联系人记录集中的信息重复的联系人记录组;分组显示获取的信息重复的联系人记录组;根据用户指令清理显示的联系人记录。此外,还提供一种冗余联系人记录清理系统。上述冗余联系人记录清理方法和系统,获取联系人记录集中信息重复的联系人记录组,并分组显示信息重复的联系人记录组,可供用户进行批量处理,一次操作即可清理多条包含冗余信息的联系人记录,从而可提高冗余联系人记录的清理速度。
Description
【技术领域】
本发明涉及数据处理领域,特别涉及一种冗余联系人记录清理方法。
【背景技术】
随着移动通信终端硬件技术的发展以及移动通信终端上智能软件的完善,移动通信终端已经成为以通信功能为主的信息处理平台。
移动通信终端的通信功能涉及到联系人记录的存储和管理。而移动通信终端上日益繁多的功能增加了联系人记录中的冗余信息。例如,一机多卡技术造成移动通信终端上存储了大量重复的联系人记录,为保护移动通信终端联系人信息而出现的各种云备份、恢复软件更是加剧了冗余信息的存储量。
【发明内容】
基于此,有必要提供一种可快速清理冗余联系人记录的冗余联系人记录清理方法。
一种冗余联系人记录清理方法,包括以下步骤:
读取联系人记录集;
获取联系人记录集中的信息重复的联系人记录组;
分组显示获取的信息重复的联系人记录组;
根据用户指令清理显示的联系人记录。
此外,还有必要提供一种方便操作的冗余联系人记录清理方法。
一种冗余联系人记录清理系统,包括:
记录集获取模块,用于读取联系人记录集;
信息重复记录获取模块,用于获取联系人记录集中的信息重复的联系人记录组;
显示模块,用于分组显示获取的信息重复的联系人记录组;
清理模块,用于根据用户指令清理显示的联系人记录。
上述冗余联系人记录清理方法和系统,获取联系人记录集中信息重复的联系人记录组,并分组显示信息重复的联系人记录组,可供用户进行批量处理,一次操作即可清理多条包含冗余信息的联系人记录,从而可提高冗余联系人记录的清理速度。
【附图说明】
图1为一个实施例中的冗余联系人记录清理方法的流程示意图;
图2为一个实施例中图1的步骤S102的流程示意图;
图3为一个实施例中哈希表中数据存储示意图;
图4为另一实施例中哈希表中数据存储示意图;
图5为另一实施例中的冗余联系人记录清理方法的流程示意图;
图6为一个实施例中的冗余联系人记录清理系统的结构示意图;
图7为一个实施例中信息重复记录获取模块的结构示意图;
图8为另一实施例中的冗余联系人记录清理系统的结构示意图;
图9为又一实施例中的冗余联系人记录清理系统的结构示意图。
【具体实施方式】
如图1所示,在一个实施例中,一种冗余联系人记录清理方法,包括以下步骤:
步骤S101,读取联系人记录集。
联系人记录集包含多条联系人记录。联系人记录的内容包含记录标识、姓名、通信号码(简称为号码)、生日、邮箱和地址等信息。记录标识为可唯一标识联系人记录的标识。
在一个实施例中,冗余联系人记录清理方法中所包含的步骤可定时执行,或者根据用户指令执行,例如,获取清理冗余联系人记录的用户指令后才执行,或者,随着移动通信终端中通讯录软件的启动而执行。
步骤S102,获取联系人记录集中的信息重复的联系人记录组。
同一信息重复的联系人记录组中包含的联系人记录的某一个数据项相同,例如,姓名相同、号码相同或地址相同等。
步骤S103,分组显示获取的信息重复的联系人记录组。
可将不同数据项对应的信息重复的联系人记录组分开显示在不同的大组中,进一步将每一个信息重复的联系人记录组单元显示在不同的小组中。例如,将多个姓名重复的联系人记录组显示在一个大组中,多个号码重复的联系人记录组显示在另一个大组,其中,每一个信息重复的联系人记录组单独显示在一个小组中。
步骤S104,根据用户指令清理显示的联系人记录。
在一个实施例中,可在显示信息重复的联系人记录组的界面设置用于批量选择联系人记录的功能键或复选框等,并提供修改功能键、删除功能键,通过修改功能键、删除功能键触发修改或删除被选中的联系人记录的修改指令或删除指令。进一步的,可根据修改指令或删除指令修改或删除被选中的联系人记录。
上述冗余联系人记录清理方法,获取联系人记录集中信息重复的联系人记录组,并分组显示信息重复的联系人记录组,可供用户进行批量处理,一次操作即可清理多条包含冗余信息的联系人记录,从而可提高冗余联系人记录的清理速度。
如图2所示,在一个实施例中,步骤S102包括以下步骤:
步骤S201,选取联系人记录中的一个或多个数据项,建立选取的数据项对应的哈希表。联系人记录中的数据项包括姓名、号码、生日、地址等。
步骤S202,以选取的数据项作为关键字映射出存储地址,将联系人记录集中的联系人记录存储到数据项对应的哈希表中所述存储地址对应位置。在一个实施例中,可将联系人记录中的记录标识存储到哈希表,而不是将整个联系人记录存储到哈希表。将某一条联系人记录存储到哈希表中时,若哈希表该联系人记录对应的存储地址对应位置上已经存储了数据,则按照预设的哈希表冲突解决机制将该联系人记录存储到哈希表中。
步骤S203,获取哈希表中对应相同的映射存储地址的多条联系人记录构成一个信息重复的联系人记录组。映射存储地址即为步骤S202中以某一联系人记录中的数据项为作为关键字,通过预设散列函数映射出的存储地址。若两条联系人记录的某一个数据项相同(例如姓名相同),则以该数据项作为关键字映射出的存储地址也相同,
以选取联系人记录中的姓名和号码这两个数据项为例,可建立姓名对应的哈希表(简称姓名哈希表)和号码对应的哈希表(简称号码哈希表)。
进一步的,以联系人记录中的姓名作为关键字映射出第一存储地址,将联系人记录存储到姓名哈希表中第一存储地址对应位置,并以联系人记录中的号码作为关键字映射出第二存储地址,将联系人记录中的记录标识存储到号码哈希表中第二存储地址对应位置。
进一步的,可获取姓名哈希表中对应同一姓名的多条联系人记录构成一个姓名重复联系人记录组,并获取号码哈希表中对应同一号码的多条联系人记录构成一个号码联系人记录组。
在一个实施例中,步骤S201建立的哈希表中的一个元素存储一个单链表的头指针。步骤S202将某一数据项相同(例如姓名相同)的联系人记录存储在同一个单链表中。具体的,步骤S202将联系人记录的某一数据项(例如姓名)作为关键字通过预设的散列函数映射出存储地址,在该数据项对应的哈希表中查找到该存储地址对应位置上的单链表头指针,将该联系人记录插入到该单链表头指针对应的单链表的末尾。
例如,如图3所示,联系人记录R1与R2的姓名相同,则R1和R2存储在同一单链表中,联系人记录R3、R4与R5的姓名相同,则R3、R4和R5存储在同一单链表中。
本实施例中,步骤S203可根据哈希表中的单链表的头指针获取存储了多个联系人记录的单链表,并将同一单链表中的多个联系人记录构成一个信息重复的联系人记录组。
在另一个实施例中,步骤S201建立的哈希表中的一个元素存储一个动态数组的指针(该指针指向动态数组)。步骤S202将某一数据项相同的联系人记录存储在同一个动态数组中。具体的,步骤S202将联系人记录的某一数据项作为关键字通过预设的散列函数映射出存储地址,在该数据项对应的哈希表中查找到该存储地址对应位置上的动态数组的指针,重新分配该指针指向的动态数组的大小,使动态数组增加一个数组元素的存储空间,将将该联系人记录插入到该动态数组中。
例如,如图4所示,联系人记录R1与R2的姓名相同,则R1和R2存储在同一动态数组中,联系人记录R3、R4与R5的姓名相同,则R3、R4和R5存储在同一动态数组中。
本实施例中,步骤S203可根据哈希表中的动态数组的指针获取存储了多个联系人记录的动态数组,并将同一动态数组中的多个联系人记录构成一个信息重复的联系人记录组。
上述冗余联系人记录清理方法,将联系人记录中的某一数据项作为关键字映射出存储地址,将联系人记录存储到该数据项对应哈希表中该存储地址对应位置,并获取哈希表中对应相同的映射得到的存储地址的多条联系人记录构成一个信息重复的联系人记录组,而根据预设的哈希表的散列函数以及哈希表冲突解决机制可快速的获取到哈希表中对应相同的映射存储地址的结点数据,因此,上述冗余联系人记录清理方法可快速的查找出联系人记录集中信息重复的联系人记录组。
而在上述实施例中,将某一数据项相同的联系人记录存储在同一单链表或者同一动态数组中,只需要获取同一单链表或者同一动态数据中多个联系人记录即可构成一个信息重复的联系人记录组,从而可非常快速的查找出联系人记录集中信息重复的联系人记录组。
在一个实施例中,步骤S102获取的信息重复的联系人记录组包括姓名重复联系人记录组和号码重复联系人记录组。同一姓名重复联系人记录组中包含的所有联系人记录的姓名相同,同一号码重复联系人记录组中包含的所有联系人记录的号码相同。
本实施例中,步骤S103之前,上述冗余联系人记录清理方法还包括步骤:查找姓名重复联系人记录组和号码重复联系人记录组中相同的记录标识;将包含有相同的记录标识的姓名重复联系人记录组和号码重复联系人记录组合并为姓名号码重复联系人记录组。
同一姓名号码重复联系人记录组中联系人记录的姓名和号码都相同。
例如,姓名重复联系人记录组A1和号码重复联系人记录组B1中包含有相同的记录标识,则将姓名重复联系人记录组A1和号码重复联系人记录组B1中的联系人记录合并,构成一个新的姓名号码重复联系人记录组,可记为C1。并将A1和B1分别从原来的姓名重复联系人记录组和号码重复联系人记录组中删除。
从而,本实施例中获取的信息重复的联系人记录组包括姓名重复联系人记录组、号码重复联系人记录组和姓名号码重复联系人记录组。步骤S103可将姓名重复联系人记录组、号码重复联系人记录组和姓名号码重复联系人记录组分开显示在不同的大组中,其中每一个信息重复的联系人记录组又单独显示在一个小组内。分门别类地显示信息重复的联系人记录组可有助于批量选择联系人记录,并对某一门类的联系人记录进行统一的编辑操作,从而实现快速地清理冗余联系人信息。
在一个实施例中,上述冗余联系人信息清理方法还包括步骤:获取联系人记录集中的信息不完整的联系人记录;显示获取的信息不完整的联系人记录。信息不完整的联系人记录为姓名或号码缺失或号码位数错误的联系人记录。可将信息重复的联系人记录组和信息不完整的联系人记录分开显示。
如图5所示,在一个实施例中,上述冗余联系人记录清理方法包括以下步骤:
步骤S500,读取联系人记录集。
步骤S501,建立姓名哈希表、号码哈希表和信息不完整哈希表。
步骤S502,逐一判断联系人记录集中联系人记录的姓名或号码是否缺失或者号码位数是否错误,若是,则执行步骤S503,若否,则执行步骤S504。
步骤S503,将联系人记录存储到信息不完整哈希表中。
步骤S504,以联系人记录中的姓名作为关键字映射出第一存储地址,将联系人记录存储到姓名哈希表中第一存储地址对应位置,并以联系人记录中的号码作为关键字映射出第二存储地址,将联系人记录存储到号码哈希表中第二存储地址对应位置。
步骤S505,分别获取姓名哈希表中对应相同的映射存储地址的多条联系人记录构成姓名重复联系人记录组,分别获取号码哈希表中对应相同的映射存储地址的多条联系人记录构成号码重复联系人记录组。
步骤S506,查找姓名重复联系人记录组和号码重复联系人记录组中相同的记录标识,将包含有相同的记录标识的姓名重复联系人记录组和号码重复联系人记录组合并为姓名号码重复联系人记录组。
步骤S507,分组显示姓名重复联系人记录组、号码重复联系人记录组、姓名号码重复联系人记录组和信息不完整哈希表中的联系人记录。
步骤S508,根据用户指令清理显示的联系人记录。
在一个实施例中,在步骤S102之前,上述冗余联系人清理方法还包括步骤:去除联系人记录中姓名所包含的空字符、号码所包含的非数字字符以及号码所包含的非必要前缀部分。
非必要前缀部分指的是拨号连接时非一定必要的部分,例如,+86、17951和12593等。
在一个实施例中,若联系人记录中姓和名分为单独的两个数据项,则可将姓和名数据项对应的数据合并,作为联系人记录的姓名。
上述实施例中,在读取到联系人记录集后,先对联系人记录中的姓名和号码进行上述预处理,可提高后续获取的信息重复的联系人记录组和信息不完整联系人记录的准确性。例如,+8613800000000与1795113800000000实质上为相同的号码,“张三”和“张三”实质上是相同的姓名,+861380000000实质上为号码位数错误的号码,经过上述预处理后,即可将联系人记录集中所有的包含有实质上相同的姓名的联系人记录归到同一个姓名重复联系人记录组,将联系人记录集中所有的包含有实质上相同的号码的联系人记录归到同一个号码重复联系人记录组,并可将所有号码位数错误的联系人记录归到信息不完整联系人记录中,从而提高获取的信息重复的联系人记录组和信息不完整联系人记录的准确性。
如图6所示,在一个实施例中,一种冗余联系人记录清理系统,包括记录集获取模块10、信息重复记录获取模块20、显示模块40和清理模块50,其中:
记录集获取模块10用于读取联系人记录集。
联系人记录集包含多条联系人记录。联系人记录的内容包含记录标识、姓名、通信号码(简称为号码)、生日、邮箱和地址等信息。记录标识为可唯一标识联系人记录的标识。
在一个实施例中,冗余联系人记录清理系统可定时执行,或者根据用户指令而启动,例如,获取清理冗余联系人记录的用户指令后才启动,或者,随着移动通信终端中通讯录软件的启动而启动。
信息重复记录获取模块20用于获取联系人记录集中的信息重复的联系人记录组。
同一信息重复的联系人记录组中包含的联系人记录的某一个数据项相同,例如,姓名相同、号码相同或地址相同等。
显示模块40用于分组显示获取的信息重复的联系人记录组。
显示模块40用于可将不同数据项对应的信息重复的联系人记录组分开显示在不同的大组中,进一步将每一个信息重复的联系人记录组单元显示在不同的小组中。例如,将多个姓名重复的联系人记录组显示在一个大组中,多个号码重复的联系人记录组显示在另一个大组,其中,每一个信息重复的联系人记录组单独显示在一个小组中。
清理模块50用于根据用户指令清理显示的联系人记录。
在一个实施例中,显示模块40可在显示信息重复的联系人记录组的界面设置用于批量选择联系人记录的功能键或复选框等,并提供修改功能键、删除功能键,通过修改功能键、删除功能键触发修改或删除被选中的联系人记录的修改指令或删除指令。清理模块50可根据修改指令或删除指令修改或删除被选中的联系人记录。
上述冗余联系人记录清理系统,获取联系人记录集中信息重复的联系人记录组,并分组显示信息重复的联系人记录组,可供用户进行批量处理,一次操作即可处理多条包含冗余信息的联系人记录,从而可提高冗余联系人记录的清理速度。
如图7所示,在一个实施例中,信息重复记录获取模块20包括哈希表建立单元210、填表单元230和记录组构建单元240,其中:
哈希表建立单元210用于选取联系人记录中的一个或多个数据项,建立选取的数据项对应的哈希表。联系人记录中的数据项包括姓名、号码、生日、地址等。
填表单元230用于以选取的数据项作为关键字映射出存储地址,将联系人记录集中的联系人记录存储到数据项对应的哈希表中所述存储地址对应位置。在一个实施例中,可将联系人记录中的记录标识存储到哈希表,而不是将整个联系人记录存储到哈希表。将某一条联系人记录存储到哈希表中时,若哈希表该联系人记录对应的存储地址对应位置上已经存储了数据,则按照预设的哈希表冲突解决机制将该联系人记录存储到哈希表中。
记录组构建单元240用于获取哈希表中对应相同的映射存储地址的多条联系人记录构成一个信息重复的联系人记录组。映射存储地址即为填表单元230以某一联系人记录中的数据项为作为关键字,通过预设散列函数映射出的存储地址。若两条联系人记录的某一个数据项相同(例如姓名相同),则以该数据项作为关键字映射出的存储地址也相同,
以选取联系人记录中的姓名和号码这两个数据项为例,哈希表建立单元210可建立姓名对应的哈希表(简称姓名哈希表)和号码对应的哈希表(简称号码哈希表)。
进一步的,填表单元230以联系人记录中的姓名作为关键字映射出第一存储地址,将联系人记录存储到姓名哈希表中第一存储地址对应位置,并以联系人记录中的号码作为关键字映射出第二存储地址,将联系人记录中的记录标识存储到号码哈希表中第二存储地址对应位置。
进一步的,记录组构建单元240可获取姓名哈希表中对应同一姓名的多条联系人记录构成一个姓名重复联系人记录组,并获取号码哈希表中对应同一号码的多条联系人记录构成一个号码联系人记录组。
在一个实施例中,哈希表建立单元210建立的哈希表中的一个元素存储一个单链表的头指针。填表单元230将某一数据项相同(例如姓名相同)的联系人记录存储在同一个单链表中。具体的,填表单元230将联系人记录的某一数据项(例如姓名)作为关键字通过预设的散列函数映射出存储地址,在该数据项对应的哈希表中查找到该存储地址对应位置上的单链表头指针,将该联系人记录插入到该单链表头指针对应的单链表的末尾。
本实施例中,记录组构建单元240可根据哈希表中的单链表的头指针获取存储了多个联系人记录的单链表,并将同一单链表中的多个联系人记录构成一个信息重复的联系人记录组。
在另一个实施例中,哈希表建立单元210建立的哈希表中的一个元素存储一个动态数组的指针(该指针指向动态数组)。填表单元230将某一数据项相同的联系人记录存储在同一个动态数组中。具体的,填表单元230将联系人记录的某一数据项作为关键字通过预设的散列函数映射出存储地址,在该数据项对应的哈希表中查找到该存储地址对应位置上的动态数组的指针,重新分配该指针指向的动态数组的大小,使动态数组增加一个数组元素的存储空间,将将该联系人记录插入到该动态数组中。
本实施例中,记录组构建单元240可根据哈希表中的动态数组的指针获取存储了多个联系人记录的动态数组,并将同一动态数组中的多个联系人记录构成一个信息重复的联系人记录组。
上述冗余联系人记录清理系统,将联系人记录中的某一数据项作为关键字映射出存储地址,将联系人记录存储到该数据项对应哈希表中该存储地址对应位置,并获取哈希表中对应相同的映射得到的存储地址的多条联系人记录构成一个信息重复的联系人记录组,而根据预设的哈希表的散列函数以及哈希表冲突解决机制可快速的获取到哈希表中对应相同的映射存储地址的结点数据,因此,上述冗余联系人记录清理系统可快速的查找出联系人记录集中信息重复的联系人记录组。
而在上述实施例中,将某一数据项相同的联系人记录存储在同一单链表或者同一动态数组中,只需要获取同一单链表或者同一动态数据中多个联系人记录即可构成一个信息重复的联系人记录组,从而可非常快速的查找出联系人记录集中信息重复的联系人记录组。
在一个实施例中,信息重复记录获取模块20获取的信息重复的联系人记录组包括姓名重复联系人记录组和号码重复联系人记录组。同一姓名重复联系人记录组中包含的所有联系人记录的姓名相同,同一号码重复联系人记录组中包含的所有联系人记录的号码相同。
本实施例中,记录组构建单元240还用于查找姓名重复联系人记录组和号码重复联系人记录组中相同的记录标识;将包含有相同的记录标识的姓名重复联系人记录组和号码重复联系人记录组合并为姓名号码重复联系人记录组。
同一姓名号码重复联系人记录组中联系人记录的姓名和号码都相同。
例如,姓名重复联系人记录组A1和号码重复联系人记录组B1中包含有相同的记录标识,则将姓名重复联系人记录组A1和号码重复联系人记录组B1中的联系人记录合并,构成一个新的姓名号码重复联系人记录组,可记为C1。并将A1和B1分别从原来的姓名重复联系人记录组和号码重复联系人记录组中删除。
从而,本实施例中获取的信息重复的联系人记录组包括姓名重复联系人记录组、号码重复联系人记录组和姓名号码重复联系人记录组。显示模块40可将姓名重复联系人记录组、号码重复联系人记录组和姓名号码重复联系人记录组分开显示在不同的大组中,其中每一个信息重复的联系人记录组又单独显示在一个小组内。分门别类地显示信息重复的联系人记录组可有助于批量选择联系人记录,并对某一门类的联系人记录进行统一的编辑操作,从而实现快速地清理冗余联系人信息。
如图8所示,在一个实施例中,上述冗余联系人信息清理系统还包括信息不完整记录获取模块30,用于获取联系人记录集中的信息不完整的联系人记录。本实施例中,显示模块40还用于显示获取的信息不完整的联系人记录。信息不完整的联系人记录为姓名或号码缺失或号码位数错误的联系人记录。显示模块40可将信息重复的联系人记录组和信息不完整的联系人记录分开显示。
在一个实施例,上述冗余联系人记录清理系统还包括判断模块(图中未示出),本实施例中:
记录集获取模块10读取联系人记录集。
信息重复记录获取模块20建立姓名哈希表和号码哈希表,信息不完整记录获取模块30建立信息不完整哈希表。
判断模块逐一判断联系人记录集中联系人记录的姓名或号码是否缺失或者号码位数是否错误,若是,信息不完整记录获取模块30将联系人记录存储到信息不完整哈希表中,若否,信息重复记录获取模块20以联系人记录中的姓名作为关键字映射出第一存储地址,将联系人记录存储到姓名哈希表中第一存储地址对应位置,并以联系人记录中的号码作为关键字映射出第二存储地址,将联系人记录存储到号码哈希表中第二存储地址对应位置。
信息重复记录获取模块20分别获取姓名哈希表中对应相同的映射存储地址的多条联系人记录构成姓名重复联系人记录组,分别获取号码哈希表中对应相同的映射存储地址的多条联系人记录构成号码重复联系人记录组。
信息重复记录获取模块20查找姓名重复联系人记录组和号码重复联系人记录组中相同的记录标识,将包含有相同的记录标识的姓名重复联系人记录组和号码重复联系人记录组合并为姓名号码重复联系人记录组。
显示模块40分组显示姓名重复联系人记录组、号码重复联系人记录组、姓名号码重复联系人记录组和信息不完整哈希表中的联系人记录。
清理模块50根据用户指令清理显示的联系人记录。
如图9所示,在一个实施例中,上述冗余联系人记录清理系统还包括预处理模块60,用于去除记录集获取模块10读取的联系人记录中姓名所包含的空字符、号码所包含的非数字字符以及号码所包含的非必要前缀部分。
非必要前缀部分指的是拨号连接时非一定必要的部分,例如,+86、17951和12593等。
在一个实施例中,若联系人记录中姓和名分为单独的两个数据项,则预处理模块60可将姓和名数据项对应的数据合并,作为联系人记录的姓名。
上述实施例中,在读取到联系人记录集后,先对联系人记录中的姓名和号码进行上述预处理,可提高后续获取的信息重复的联系人记录组和信息不完整联系人记录的准确性。例如,+8613800000000与1795113800000000实质上为相同的号码,“张三”和“张三”实质上是相同的姓名,+861380000000实质上为号码位数错误的号码,经过上述预处理后,即可将联系人记录集中所有的包含有实质上相同的姓名的联系人记录归到同一个姓名重复联系人记录组,将联系人记录集中所有的包含有实质上相同的号码的联系人记录归到同一个号码重复联系人记录组,并可将所有号码位数错误的联系人记录归到信息不完整联系人记录中,从而提高获取的信息重复的联系人记录组和信息不完整联系人记录的准确性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序控制相关的硬件来完成的,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种冗余联系人记录清理方法,包括以下步骤:
读取联系人记录集;
将联系人记录集中的联系人记录存储到选取的数据项对应的哈希表中的存储地址对应位置,且所述存储地址以选取的数据项作为关键字映射出;
获取所述哈希表中对应相同的所述存储地址的多条联系人记录构成信息重复的联系人记录组;
分组显示获取的信息重复的联系人记录组;
根据用户指令清理显示的联系人记录。
2.根据权利要求1所述的冗余联系人记录清理方法,其特征在于,所述将联系人记录集中的联系人记录存储到选取的数据项对应的哈希表中的存储地址对应位置的步骤之前,所述方法还包括:
选取联系人记录中的一个或多个数据项,建立选取的数据项对应的哈希表;
以选取的数据项作为关键字映射出存储地址。
3.根据权利要求2所述的冗余联系人记录清理方法,其特征在于,获取的信息重复的联系人记录组包括姓名重复联系人记录组和号码重复联系人记录组;
在分组显示获取的信息重复的联系人记录组的步骤之前,所述方法还包括:
查找姓名重复联系人记录组和号码重复联系人记录组中相同的记录标识;
将包含有相同的记录标识的姓名重复联系人记录组和号码重复联系人记录组合并为姓名号码重复联系人记录组。
4.根据权利要求1所述的冗余联系人记录清理方法,其特征在于,所述方法还包括:
获取联系人记录集中的信息不完整的联系人记录;
显示获取的信息不完整的联系人记录。
5.根据权利要求1所述的冗余联系人记录清理方法,其特征在于,在获取联系人记录集中信息重复的联系人记录组的步骤之前,所述方法还包括:
去除联系人记录中姓名所包含的空字符、号码所包含的非数字字符以及号码所包含的非必要前缀部分。
6.一种冗余联系人记录清理系统,其特征在于,包括:
记录集获取模块,用于读取联系人记录集;
填表单元,用于将联系人记录集中的联系人记录存储到选取的数据项对应的哈希表中的存储地址对应位置,且所述存储地址以选取的数据项作为关键字映射出;
记录组构建单元,用于获取所述哈希表中对应相同的所述存储地址的多条联系人记录构成信息重复的联系人记录组;
显示模块,用于分组显示获取的信息重复的联系人记录组;
清理模块,用于根据用户指令清理显示的联系人记录。
7.根据权利要求6所述的冗余联系人记录清理系统,其特征在于,所述系统还包括:
哈希表建立单元,用于选取联系人记录中的一个或多个数据项,建立选取的数据项对应的哈希表;
所述填表单元还用于以选取的数据项作为关键字映射出存储地址。
8.根据权利要求7所述的冗余联系人记录清理系统,其特征在于,信息重复记录获取模块获取的信息重复的联系人记录组包括姓名重复联系人记录组和号码重复联系人记录组;
所述记录组构建单元还用于查找姓名重复联系人记录组和号码重复联系人记录组中相同的记录标识,将包含有相同的记录标识的姓名重复联系人记录组和号码重复联系人记录组合并为姓名号码重复联系人记录组。
9.根据权利要求6所述的冗余联系人记录清理系统,其特征在于,所述系统还包括信息不完整记录获取模块,用于获取联系人记录集中的信息不完整的联系人记录;
所述显示模块还用于显示获取的信息不完整的联系人记录。
10.根据权利要求6所述的冗余联系人记录清理系统,其特征在于,所述系统还包括预处理模块,用于去除联系人记录中姓名所包含的空字符、号码所包含的非数字字符以及号码所包含的非必要前缀部分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310084450.9A CN104050048B (zh) | 2013-03-15 | 2013-03-15 | 冗余联系人记录清理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310084450.9A CN104050048B (zh) | 2013-03-15 | 2013-03-15 | 冗余联系人记录清理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104050048A CN104050048A (zh) | 2014-09-17 |
CN104050048B true CN104050048B (zh) | 2017-09-15 |
Family
ID=51502942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310084450.9A Active CN104050048B (zh) | 2013-03-15 | 2013-03-15 | 冗余联系人记录清理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104050048B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106850924A (zh) * | 2017-01-23 | 2017-06-13 | 北京奇虎科技有限公司 | 通讯录数据处理方法及处理终端 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453502A (zh) * | 2007-11-13 | 2009-06-10 | 兄弟工业株式会社 | 能够组织重复地址簿记录的通信设备 |
CN101515270A (zh) * | 2008-02-21 | 2009-08-26 | 中国移动通信集团公司 | 联系人信息提取方法及装置 |
US7643820B2 (en) * | 2006-04-07 | 2010-01-05 | Motorola, Inc. | Method and device for restricted access contact information datum |
CN102479206A (zh) * | 2010-11-23 | 2012-05-30 | 汉王科技股份有限公司 | 按姓氏列表查找电话簿联系人的方法及电话簿存储装置 |
-
2013
- 2013-03-15 CN CN201310084450.9A patent/CN104050048B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7643820B2 (en) * | 2006-04-07 | 2010-01-05 | Motorola, Inc. | Method and device for restricted access contact information datum |
CN101453502A (zh) * | 2007-11-13 | 2009-06-10 | 兄弟工业株式会社 | 能够组织重复地址簿记录的通信设备 |
CN101515270A (zh) * | 2008-02-21 | 2009-08-26 | 中国移动通信集团公司 | 联系人信息提取方法及装置 |
CN102479206A (zh) * | 2010-11-23 | 2012-05-30 | 汉王科技股份有限公司 | 按姓氏列表查找电话簿联系人的方法及电话簿存储装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104050048A (zh) | 2014-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104978151B (zh) | 基于应用感知的重复数据删除存储系统中的数据重构方法 | |
CN100523735C (zh) | 一种基于小网格路网组织结构的快速地图匹配方法 | |
CN103699585B (zh) | 文件的元数据存储以及文件恢复的方法、装置和系统 | |
CN103140840B (zh) | 数据管理的方法及装置 | |
JP5656563B2 (ja) | 文書管理システム、文書管理システムの制御方法、プログラム | |
CN1983266B (zh) | 闪速类介质中存储事务记录的文件系统 | |
CN104216895B (zh) | 一种生成poi数据的方法及装置 | |
CN100571317C (zh) | 一种话单排重方法及装置 | |
CN107992492A (zh) | 一种数据区块的存储方法、读取方法、其装置及区块链 | |
CN101512526A (zh) | 动态片段映射 | |
CN102314485A (zh) | 哈希表添加、查找和删除方法及装置 | |
JP2008181260A5 (zh) | ||
TW200832168A (en) | Bit string retrieving device, retrieving method, and program memory medium | |
CN103257971B (zh) | 终端和文件管理方法 | |
JP2009015530A5 (zh) | ||
CN103699673B (zh) | 一种移动终端的图片处理方法、装置和移动终端 | |
CN104834650A (zh) | 一种有效查询任务生成方法及系统 | |
JP2008269503A5 (zh) | ||
CN102999577A (zh) | 信息合成方法及终端设备 | |
CN108009049A (zh) | Myisam存储引擎删除记录离线恢复方法、存储介质 | |
JP3885005B2 (ja) | スケジューリング方法ならびにスケジューリング装置 | |
CN104050048B (zh) | 冗余联系人记录清理方法和系统 | |
CN105787090A (zh) | 一种电力数据的olap系统的索引建立方法和系统 | |
CN103299297A (zh) | 文件目录存储方法、检索方法和设备 | |
CN108090186A (zh) | 一种大数据平台上的电力数据去重方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |