请教各位C语言大神,啥样的数据结构时间复杂度最低?Binary Search Tree, AVL Tree, 2-3 Tree, B-Tree等
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请教各位C语言大神,啥样的数据结构时间复杂度最低?Binary Search Tree, AVL Tree, 2-3 Tree, B-Tree等相关的知识,希望对你有一定的参考价值。
现有100万行数据,每行数据有此格式 [string] [integer] [integer] [float],exp: Psychology 800 3842332 0,有四个任务需要完成:1、找到第10239小的数和81955大的数并输出。2、数某个string出现次数, say "psychological",并输出次数。3、找出所有第三行数为某值的行数据,并按string字母 ASCII 升序排列。4、string大小写不同,而其余数据都相同的行数据出现的次数。要求是C语言,搜索速度越快越好的数据结构,请教指引一个方向!
参考技术A 个人感觉这题其实可参照数据库索引的处理方式来思考。很多数据库的索引都采用B-tree来实现,所以估计对100万行级别的数据,索引采用这种数据结构是综合考虑后的最佳选择(但我确实不知正确答案,也说不出详细理由,仅提个思路供参考)。楼主不妨从这个角度切入,分析B树和其它选项的特点,结合应用要求来选择。进一步还可对此实际问题尝试在数据库中建立测试表,结合实测数据来比较自己C语言实现的效率。不求采纳,只是有兴趣参与讨论。追问给出的数据时txt形式,测试表神马的也不太懂...
追答在数据库里按你的问题建立测试数据什么的,本来只是为通过熟悉如何根据查询的特点来合理创建索引、以便为你的C语言实现中建立更有效和清晰的思路……如果根本不熟悉数据库,就当这句没说吧,这个建议只是意欲帮你找个迅速和相对具体的理解方式而已。
参考技术B 无循环结构的数据结构代码。 参考技术C 哦哦以上是关于请教各位C语言大神,啥样的数据结构时间复杂度最低?Binary Search Tree, AVL Tree, 2-3 Tree, B-Tree等的主要内容,如果未能解决你的问题,请参考以下文章
我的主板时间老是走慢,据说是石英晶震的问题,请问是在主板上是啥样的拜托了各位 谢谢
C语言的printf函数在windows平台的系统调用过程是啥样的?