文章分类 -  数据结构算法总结

二分查找的递归和非递归两种实现
摘要:二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两 阅读全文

posted @ 2019-06-03 10:02 YOOC

栈
摘要:不同点: 队列是先进先出:就像一条路,有一个入口和一个出口,先进去的就可以先出去。 而栈就像一个箱子,后放的在上边,所以后进先出。 进程中每个线程都有自己的堆栈,这是一段线程创建时保留下的地址区域。我们的“栈内存”即在此。至于“堆”内存,在未用new定义时,堆应该就是未“保留”未“提交”的自由空间, 阅读全文

posted @ 2019-04-08 13:40 YOOC

表
摘要:抽象数据类型(ADT):一组可操作对象的集合 操作类型: add remove contain(包含) union find 1.表的简单数组的实现 虽然数组的容量是有限的,但是我么可以在数组需要扩容的时候创建一个双倍的容量的数组 上面虽然使用简单的数组实现了表,但是在数据的插入和删除的操作上存在着 阅读全文

posted @ 2019-04-01 10:42 YOOC 阅读(148) 评论(0) 推荐(0)

时间复杂度
摘要:1.时间复杂度判断 一般法则 1.1 for循环 for循环的运行时间至多是for循环内部代码的运行时间乘for循环的迭代次数 上例代码for循环的运行 n*1次所以时间复杂度为 O(n) 1.2 嵌套for循环法则 分析嵌套循环的诀窍是 从里向外分析这些循环: 言语不足以表达,且看画图大法: 所以 阅读全文

posted @ 2019-03-26 13:31 YOOC 阅读(462) 评论(0) 推荐(0)

导航