`
linuxstuding
  • 浏览: 1233541 次
文章分类
社区版块
存档分类
最新评论

软考(2)--算法

 
阅读更多

数据结构和算法是一对兄弟,讲到数据结构肯定是要有算法的.因为算法就是对数据的计算.不同的数据结构适应不同的算法.

软考对算法的要求就是对排序算法的掌握,还有查找算法.

还有就是对各种排序算法的时间复杂度空间复杂的的比较计算.

常用算法和查找如下:

几点说明:

1:

根据排序元素所在位置的不同,排序分:内排序和外排序。

内排序:在排序过程中,所有元素调到内存中进行的排序,称为内排序。内排序是排序的基础。内排序效率用比较次数来衡量。按所用策略不同,内排序又可分为插入排序、选择排序、交换排序、归并排序及基数排序等几大类。

外排序:在数据量大的情况下,只能分块排序,但块与块间不能保证有序。外排序用读/写外存的次数来衡量其效率.

2:算法通过时间复杂度,空间复杂度,稳定性三个指标来衡量.

3:算法稳定性是假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,ri=rj,且ri在rj之前,而在排序后的序列中,ri仍在rj之前,则称这种排序算法是稳定的;否则称为不稳定的

4:Hash表又称散列表,是一种实用的查找技术,能在O(1)时间内完成查找.

哈希表之所以比其他表查找快,因为其它表关键字的位置是随机的,hash表查找位置是固定的.

哈希表可以有不同的哈希函数.好的哈希函数产生的冲突少

5:对有序的数据查找效率高,所以查找的关键是排序.




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics