GenmCai
GenmCai
全部文章
算法和数据结构
ACM(1)
C++(2)
C\C++(1)
Git(1)
Linux(1)
Python(2)
shell(3)
题解(23)
归档
标签
去牛客网
登录
/
注册
GenmCai的博客
Be a salted fish with a dream
全部文章
/ 算法和数据结构
(共6篇)
【数据结构】 二叉树恢复
先序 + 中序 恢复二叉树 void createBinaryTree(BintreeNode *& t, char * preorder, char * inorder, int n) { if (n == 0) { t = NULL; } ...
2020-01-02
0
719
排序算法——插入排序
插入排序 拥有一个无序的数组,我们只需先拿一个数(一般拿第一个),把它先当作一个有序的数组。然后把这个无序数组中其它数分别插入到已经有序的数组中即可。 代码构造思路:首先得考虑要用什么数据结构,是链表还是顺序表。在下面的代码中,我使用的是顺序表,其实就是普通的数组。然后因为我拿第一个数做为已经有...
2020-01-02
0
535
排序算法——希尔排序
希尔排序 我对希尔排序进行学习的博客:希尔排序–简单易懂图解 前言 可以说是一个加强版的插入排序。在插入排序中,最好的时间复杂度是 O ( ...
2020-01-02
0
563
排序算法——桶排序
桶排序 前言 桶排序是一个在时间复杂度和空间复杂度十分极端的算法,它的时间复杂度可以达到 O ( N ...
2020-01-02
0
2941
排序算法——基数排序
基数排序 基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部分资讯,将要排序的元素分配至“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为...
2020-01-02
0
438
排序算法——快速排序
快速排序 基本做法 在此我们使用递归的快速排序。既然使用了递归,自然就是要解决一些重复的子任务,然后完成最后的大任务,而大任务自然就是让整个数组整体有序,那需要重复的小任务是什么呢? 快排的一个个子任务,就是要在各自范围内的数组中取一个数当基准数(一般取范围内的最左边、最右边或中间的数),...
2020-01-02
0
611