Avatar notebook default
8篇文章 · 1530字 · 1人关注
  • 树:整体理解

    二叉查找树 二叉查找树出现的目的是使查询的速率整体能够维持在O(logn)上,而又不像链表那样查询一定需要O(logN)的时间复杂度,和数组那样...

  • 排序:归并排序

    归并排序运用分治的思想,把大的问题逐部分解成能够解决的小问题.时间复杂度为nlogn.Ps:使用引用传递的方法把临时数组赋值进去,这样就可以没必...

  • 排序:希尔排序

    希尔排序就是增强版的选择排序,插入排序是依次进行插入比较.希尔排序则是选择增量间隔进行比较,这样就可以节省时间效率.时间复杂度为nlogn. 代码:

  • 排序:插入排序

    插入排序的核心如同扑克牌,点数小的扑克牌放到最前面,之后的扑克牌依次往后挪动.时间复杂度0(n^2).代码:

  • 排序:堆排序

    最大堆排序的核心思想是建立一个最大堆,将数组的元素依次通过最大堆函数来调整.(开始位置从最后一个父节点开始)然后将堆顶元素和元素末端元素进行交换...

  • 排序:选择排序

    选择排序的核心就是每次把当前数组最小的值放在数组的最前面,所以n个数组每次需要n个时间,数组的时间复杂度就是n^2.i代表趟数,当走过array...

  • 排序:快速排序

    快速排序是一种交换排序,他是稳定的排序,时间复杂度是nlogn,因为每次partition需要n个时间,共分为logn次.所以整体时间复杂度是n...

  • 排序:冒泡排序

    冒泡排序是交换排序的一种,他的平均时间复杂度是O(n^2),空间复杂度是O(1).这种排序的核心就是每个元素与相邻的元素进行比较后交换,直到不再...

文集作者