数据结构和算法
大数据最好
大数据,机器学习,深度学习
展开
-
二叉树的基本性质
研究二叉树的性质个人感觉没什么用处,但是有时候考试可以用得到,就当作应付考试的资料,记住这几个就行了1.在二叉树的第i层上最多有2 i-1 个节点2.二叉树中如果深度为k,那么最多有2k-1个节点 3.n0=n2+1 n0表示度数为0的节点 n2表示度数为2的节点4.在完全二叉树中,具有n个节点的完全二叉树的深度为[log2n]原创 2015-01-06 20:12:58 · 1257 阅读 · 0 评论 -
静态查找表与计算平均查找长度
查找是在大量的信息中寻找一个特定的信息元素,在计算机应用中,查找是常用的基本运算,例如编译程序中符号表的查找。 顺序查找,二分查找,hash查找是所有查找算法中较为基础的查找算法,较为容易理解,实现也较为简单。NO1.顺序查找编辑顺序查找过程:从表中的最后一个记录开始,逐个进行记录的关键字与给定值进行比较,若某个记录的关键字与给定值相等,则查找成功,找到所查的记录;原创 2015-01-06 16:39:54 · 2085 阅读 · 2 评论 -
常用排序算法的时间和空间复杂度及算法时间复杂度的简单计算
常用的排序算法的时间复杂度和空间复杂度:排序法最差时间分析平均时间复杂度稳定度空间复杂度冒泡排序O(n2)O(n2)稳定O(1)快速排序O(n2)O(n*log2n)不稳定O(log2n)~O(n)选择排序O(n2)O(n2)稳定O(1)二叉树排序O(原创 2015-01-07 16:45:12 · 795 阅读 · 0 评论 -
常用排序算法介绍与实现
冒泡排序:void bubblesort(int a[], int n){ int j, k; int flag,temp; flag = n; while (flag > 0){ k = flag; flag = 0; for (j = 1; j < k; j++) if(a[j-1]>a[j]){ temp = a[j - 1]; a[j - 1]原创 2015-01-06 21:14:29 · 399 阅读 · 0 评论 -
旋转字符串
题目描述给定一个字符串,要求把字符串前面的若干个字符移动到字符串的尾部,如把字符串“abcdef”前面的2个字符'a'和'b'移动到字符串的尾部,使得原字符串变成字符串“cdefab”。请写一个函数完成此功能,要求对长度为n的字符串操作的时间复杂度为 O(n),空间复杂度为 O(1)。解法一:暴力移位法暴力移位法,也就是将第一个字母移到最后,然后将后面各个位置的字母向前移动原创 2015-10-08 17:43:41 · 435 阅读 · 0 评论 -
java实现栈
/** * Created by murphy on 2016/7/4. */public class Stack { private int DEFAULT_SIZE=12; private int[] arr; private int count=0; public Stack(int size){ arr=new int[size];原创 2016-07-04 22:05:04 · 435 阅读 · 0 评论