- 博客(22)
- 资源 (5)
- 收藏
- 关注
原创 二叉查找树(二叉排序树)创建,插入,删除操作。
二叉排序树二叉排序树是一个基础的树的数据结构。应用非常多。它的特性就是,左孩子小于parent,右孩子大于parent.寻找节点寻找节点就是直接根据数值的大小,从root节点开始遍历,大于当前遍历节点就向它的右子树查找,相反则查找它的左子树。然后返回。查找最大最小节点直接根据root节点,遍历到最右就是最大节点,遍历到最左,就是最小节点。插入节点
2014-07-31 22:29:37 2832
原创 算法学习 - 表达树的建立(后缀表达式法),树的先序遍历,中序遍历,后序遍历(非递归)
表达树就是根据后缀表达式来建立一个二叉树。这个二叉树的每个叶子节点就是数,真祖先都是操作符。通过栈来建立的,所以这里也会有很多栈的操作。树的先序遍历,中序遍历,后序遍历的概念我就不讲了,不会的自行百度,不然也看不懂我的代码。下面是代码://// main.cpp// expressionTree//// Created by Alps on 14-7-29.//
2014-07-30 22:47:03 2396
原创 算法学习 - 树的一些解释
树的解释树是ADT里面很经典的数据结构了,应用太多了,相对于链表的线性访问时间,O(n)。树的大部分操作的平均运行时间都是为O(logN)。- 树的概念树有几种方式定义,一种是递归,若树不为空,则一棵树是由根(root)的节点r和0个或者多个非空树组成。N个节点的树,有N-1个边。没有儿子的节点称为叶子(leaf). 对于任意节点N(i),它的深度为从根节点到N(i)的唯一路径长度。如
2014-07-29 21:58:22 979
原创 队列实现 (双向循环链表 C++)
队列是很简单的,但是用数组实现可能更好点。。(其实我觉得数组在多个队列的时候更难)然后我是第一次写双向循环链表。指向太乱了。我这里是按照自己的想法,建立了一个头节点,一个尾节点,然后按照队列顺序正向插入到两个节点之间。输出和弹出队列的时候从后面操作。下面上代码://// main.cpp// queue//// Created by Alps on 1
2014-07-28 23:48:04 1748
原创 算法学习 - 后缀表达式 (C++ 栈实现)
后缀表达式就是把一个式子进行树的后序遍历。然后根据这个顺序来求值。栈来实现的时候很简单。例如中缀表达式:6 * [ 5 + ( 2 + 3 ) * 8 + 3 ]则 后缀表达式为:6 5 2 3 + 8 * + 3 + *
2014-07-28 21:04:27 1765
原创 算法学习 - 括号匹配(栈实现)C++
括号匹配是栈最典型的应用了。其实思路很简单,就是遇到一个左括号就压栈,遇到一个右括号就弹栈,看是否匹配就好了。最后检查下栈里是不是有剩余的括号就行了。
2014-07-28 10:37:04 3367
原创 算法学习 - 链表的游标实现~ C++
链表的游标实现,就是用另外一种方法来访问链表,模拟游标。在我学习的理解中,就是创建一个节点数组,模拟内存的排列,然后从其中来申请内存和释放内存。但是实际的内存没有被释放~
2014-07-27 17:42:17 3542 1
原创 javascript学习 - js的Date对象函数
js的Date函数功能很强大。一般用到的。首先获取当前日期: var CurDate = new Date(); var Year = CurDate.getFullYear(); //年份(四位 例:2014) var Month = CurDate.getMonth()+1; //月 0~11 var Day = CurDate.getDate(); //获得几号 1~31 var week = CurDate.getDay(); //获得周几 0~6 解释:0是周日 1是周一
2014-07-26 22:37:11 1491
原创 算法学习-基数排序(radix sort)卡片排序(card sort) C++数组实现
基数排序又叫卡片排序,这是在比较早的时候用的比较多的排序方法。在现代计算机出现之前,一直用于老式穿孔卡的排序。说下基数排序的思想,前面我有写一个桶式排序,基数排序的思想是桶式排序的推广。桶式排序:http://blog.csdn.net/alps1992/article/details/38132593
2014-07-26 17:55:11 3221
原创 git学习-git status, git diff, git rm, git mv等文件操作命令解释。
git status, git diff, git rm, git mv等文件操作命令解释。
2014-07-24 13:32:27 2154
原创 算法-对分查找(二分查找)C++实现
这个是个基本的查找算法,因为只是把数读入就需要(N)的时间量,因此我们在说这类问题的时候都是假设读入过的。在算法常用的时间,将问题缩小为一部分(大约1/2),那么我们就认为这个算法是O(logn)级别的。
2014-07-24 09:16:54 3088
转载 git学习-官方创建仓库办法(从命令行)
github原文:Create a new repository on the command linetouch README.mdgit initgit add README.mdgit commit -m "first commit"git remote add origin https://github.com/chenfushan/raspberry.gi
2014-07-23 10:59:33 990
原创 /bin/helloworld: line 1: syntax error: unexpected word (expecting ")")
openwrt移植遇到问题。/bin/helloworld: line 1: syntax error: unexpected word (expecting ")")这个问题z
2014-07-18 20:52:18 6084
原创 Package helloworld is missing dependencies for the following libraries: libc.so.6
这个是在我在Openwrt的SDK下编译模块的时候碰到的问题。Package helloworld is missing dependencies for the following libraries: libc.so.6
2014-07-18 10:40:01 11199 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人