![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法和数据结构
csmips
这个作者很懒,什么都没留下…
展开
-
算法:在二叉树中寻找两个节点的共同祖先
问题:已知二叉树root和两个节点p和q,要求找出p和q在root中的最早的共同祖先。 算法思想:中序访问二叉树,对于当前节点,当其左子树和右子树访问完毕,且p与q都已经访问过,则当前节点就是p与q的共同祖先。 算法伪码: cnt = 0; commonAncestor = null; inorder(node) { if (node == nul原创 2017-09-07 10:45:34 · 3186 阅读 · 0 评论 -
排序算法总结
插入排序: 1. 从数组的第二个元素开始,将其插入到已经有序的元素中。 选择排序: 1. 扫描数组,记录下最小的元素,将其与第一个元素交换。 2. 重复1,只是交换元素后移。 冒泡排序的思想: 1. 从数组第一个数组元素开始,到数组末尾,如果当前元素比后记元素大,则交换。——确保最大的元素 “冒泡” 到数组末尾。 2. 重复1,只是数组的长度减一(因为最后一个元素已经原创 2017-09-09 09:56:54 · 224 阅读 · 0 评论