码迷,mamicode.com
首页 >  
搜索关键字:数据结构与算法分析    ( 232个结果
《数据结构与算法分析:C语言描述》复习——第四章“树”——AVL树
2014.06.15 16:22简介: AVL树是一种高度平衡的二叉搜索树,其命名源自于联合发明算法的三位科学家的名字的首字母。此处“平衡”的定义是:任意节点的左右子树的高度相差不超过1。有了这个平衡的性质,使得AVL树的高度H总是接近log(N),因此各种增删改查的操作的复杂度能够保证在对数级别....
分类:编程语言   时间:2014-06-18 23:42:43    阅读次数:734
插入排序,希尔排序,堆排序,归并排序,快速排序Java实现
参看:数据结构与算法分析-c语言描述public class Main { public static void main(String[] args) { String[] a = { "a", "d", "e", "f", "m" }; String[] b =...
分类:编程语言   时间:2014-06-18 16:08:33    阅读次数:211
《数据结构与算法分析:C语言描述》复习——第六章“排序”——冒泡排序
2014.06.17 01:04简介: 冒泡排序是O(n^2)级别的交换排序算法,原理简单,属于必知必会的基础算法之一。思路: 排序要进行N轮,每一轮从尾部逐个向前扫描,遇到逆序对就进行交换。确保每一轮把最小的元素交换到前面去。这个过程好比水中的气泡向上飘,所以叫冒泡排序。代码非常简单,所以语言.....
分类:编程语言   时间:2014-06-17 23:20:33    阅读次数:268
《数据结构与算法分析:C语言描述》复习——第六章“排序”——插入排序
2014.06.17 01:37简介: 插入排序是最常用的O(n^2)级别的交换排序算法。之所以最常用,是因为它和选择排序、冒泡排序相比,有着自己的优势。描述: 如果数组的前i - 1个元素已经排好序,你要将第i个元素插入到其中,使得前i个元素变得有序。为了找到应该插入的位置,我们从后向前扫描,.....
分类:编程语言   时间:2014-06-17 21:30:02    阅读次数:254
《数据结构与算法分析:C语言描述》复习——第六章“排序”——选择排序
2014.06.17 01:17简介: 选择排序是一种O(n^2)级别的交换排序算法,属于新手必学算法。描述: 个人觉得选择排序的代码是所有排序中最直观,最符合人类大脑思维的了。当我第一次有排序的需求时(初中时自学了一点C语言,算是人生第一次写代码),我自己试着写下的代码就是选择排序,当然我上了.....
分类:编程语言   时间:2014-06-17 14:26:16    阅读次数:203
[数据结构与算法分析(Mark Allen Weiss)]二叉树的插入与删除 @ Python
二叉树的插入与删除,来自Mark Allen Weiss的《数据结构与算法分析》。# Definition for a binary tree nodeclass TreeNode: def __init__(self, x): self.val = x self...
分类:编程语言   时间:2014-06-17 14:25:01    阅读次数:291
《数据结构与算法分析:C语言描述》复习——第四章“树”——伸展树
2014.06.15 20:42简介: 伸展树是一种介于普通二叉搜索树和AVL树之间的,比较平衡的一种二叉搜索树。它不像AVL树那样总是高度平衡,虽然单次操作的就可能耗费O(n)时间,但连续M次基本操作的时间复杂度能做到O(M * log(N)),M当然不能和1太接近。这种复杂度叫做均摊复杂度,英....
分类:编程语言   时间:2014-06-17 00:21:20    阅读次数:363
《数据结构与算法分析:C语言描述》复习——第五章“堆”——二叉堆
2014.06.15 22:14简介: 堆是一种非常实用的数据结构,其中以二叉堆最为常用。二叉堆可以看作一棵完全二叉树,每个节点的键值都大于(小于)其子节点,但左右孩子之间不需要有序。我们关心的通常只有堆顶的元素,而整个堆则被封装起来,保存在一个数组中。图示: 下图是一个最大堆: 实现: 优...
分类:编程语言   时间:2014-06-16 13:16:58    阅读次数:230
[leetcode]Pow(x, n) @ Python
原题地址:https://oj.leetcode.com/problems/powx-n/题意:Implement pow(x,n).解题思路:求幂函数的实现。使用递归,类似于二分的思路,解法来自Mark Allen Weiss的《数据结构与算法分析》。代码:class Solution: #...
分类:编程语言   时间:2014-06-11 08:59:33    阅读次数:317
尾递归与普通递归
这篇文章总结尾递归,普通递归的区别,以及使用递归时需要注意的问题。 1. 递归定义 递归有四条基本准则,摘抄自艾伦韦斯的《数据结构与算法分析——C语言描述》。 1)基准情形:可以理解为无须递归就可以解出的结果,或者说是递归的最终到达点,或者说是初始条件。 2)不断推进:不断的循环,直...
分类:其他好文   时间:2014-06-06 22:25:01    阅读次数:282
232条   上一页 1 ... 21 22 23 24 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!