一部分摘抄网上,一部分个人所写,如有不对,劳烦指正,持续更新
15.1-1Show that equation (15.4) follows from equation (15.3) and the initial condition T(0) = 1.\[\begin{aligned}
T(n) & = 1 + T(1) + T(2) + .
转载
2023-06-21 21:45:56
122阅读
红黑树的定义: 一棵二叉查找树如果满足下面的红黑性质,则为一棵红黑树: 1)每个节点或是红的,或是黑的。 2)根节点是黑的。 3)每个叶节点(NIL)是黑节点。 4)如果一个节点是红的,则它的两个儿子都是黑的。 5)对每个节点,从该节点到其子孙节点的所有路径上包含相同节点数目的黑节点。 C++代码实现: BRTreeNode.h #ifndef BRT
原创
2012-11-10 09:50:00
481阅读
代码主要来自网上流传的一份南京大学陈氏三姐妹的大作业。 花了一些时间测试和修改,代码基本OK了,结构也比较清晰。 我两把刷子,裸写的话没一个礼拜真下不来。 #include <stdio.h> #include <malloc.h> #include <stdlib.h> #define EQ(a,b) ((a)==(b)) #define
原创
2012-10-23 21:44:00
339阅读
package lhz.algorithm.chapter.six; /** * “构建堆”,《算法导论》6.3章节 Building a heap * 利用之前实现的<code>MaxHeapify</code>算法,构
原创
2011-12-08 21:20:21
5468阅读
点赞
5评论
想要撸一遍算法导论的想法很早就有的,但是人之懒性无奈之,直到看到一句励志的话,你永远不知道,你以后要有多努力,才能弥补现在的懒惰。我这人很懒,索性现在稍微努力点,也是为了以后可以偷懒。所以now rather thinking than action。共勉之...算法导论day1算法在计算中的作用算法(algorithm)就是任何良定义的计算过程,该过程取某个值或值的集合作为输入并产生某个值或值的
转载
2024-01-31 03:00:15
73阅读
第一部分 基础知识第1章 算法在计算中的作用第2章 算法基础第3章 函数的增长第4章 分治策略第5章 概率分析和随机算法第二部分 排序和顺序统计量第6章 堆排序第7章 快速排序第8章 线性时间排序第9章 中位数和顺序统计量第三部分 数据结构第10章 基本数据结构第11章 散列表第12章 二叉搜索树第13章 红黑树第14章 数据结构的扩张第四部分 高级设计和分析技术第15章 动态规划第16章 贪心算
本人One Coder博客:http://www.coderli.com/archives/insert-sort
转载请务必注明出处:One Coder - http://www.coderli.com/archives/insert-sort
package lhz.algorithm.chapter.two; /**&nbs
原创
2011-11-29 11:20:05
3179阅读
点赞
9评论
根据书上的伪代码实现的最大堆,以及在最大堆基础上实现的优先级队列:
转载
2010-11-05 15:04:00
141阅读
2评论
1. 写在前面本篇博文是学习算法导论的第一次记录,主要想介绍如何去证明算法的正确性;如何去评判一种算法的好坏;以及如何去改进算法。2. 从插入排序说起插入排序(insert-sort)是一种十分常见的算法,我们在生活中可能就经常在使用——玩扑克。考虑我们抓牌时的场景。首先,你的右手(不考虑左撇子)会不断从桌上拿起一张扑克,然后从左往右(或从右往左)依次观察左手扑克序列中各个牌面的大小,直到找到一个
转载
2024-06-11 15:06:29
72阅读
文章目录排序算法说明排序的定义术语说明算法总结上图名词解释比较和非比较的区别比较排序非比较排序十大排序算法冒泡排序(Bubble Sort)选择排序(Selection Sort)插入排序(Insertion Sort)希尔排序(Shell Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)计数排序(Counting Sort)桶排序(Buck
转载
2023-09-19 09:43:32
41阅读
算法导论 第6章 堆排序相比归并排序和插入排序,堆排序 的时间复杂度是O(nlgn)与归并排序相同,且具有与插入排序一样的空间原址性,即任何时候只需要常数个额外的元素空间存储临时数据。因此堆排序是一种集合了这两种算法优点的排序算法。堆排序引入了称为 堆 的数据结构,堆是一个数组,可以看成一个近似的完全二叉树,树上每个节点对应一个数组元素。另树的根节点为A[1],且给定一个节点的下标i,他的父节点下
一、概述1. 算法表述自然语言(ENGLISH)算法描述语言(Pseudo-code)计算机程序语言(C++,Java)硬件设计(DSP)2. 算法一般特性**正确性:**对于符合输入类型的任意输入数据,都产生正确的输出**有效性:**每一步指令能够被有效的执行,并且规定了指令的执行效果,结果应该具有的数据类型,而且是可以预期的**确定性:**每一步之后都要有确定的下一步指令**有穷性:**有限步
转载
2023-07-20 12:45:59
121阅读
前言:贪心算法也是用来解决最优化问题,将一个问题分成子问题,在现在子问题最优解的时,选择当前看起来是最优的解,期望通过所做的局部最优选择来产生一个全局最优解。书中先从活动选择问题来引入贪心算法,分别采用动态规划方法和贪心算法进行分析。本篇笔记给出活动选择问题的详细分析过程,并给出详细的实现代码进行测试验证。关于贪心算法的详细分析过程,下次在讨论。1、活动选择问题描述S= {a1,a2
转载
2023-06-06 11:34:41
199阅读
学习《算法导论》学习感受
原创
2013-04-10 16:13:00
485阅读
QQ 1274510382Wechat JNZ_aming商业联盟 QQ群538250800技术搞事 QQ群599020441解决方案 QQ群152889761加入我们 QQ群649347320共享学习 QQ群674240731纪年科技aming网络安全 ,深度学习,嵌入式,机器强化,生物智能,生命科学。...
原创
2021-07-18 21:57:04
413阅读
队列的基本操作包括入队enqueue和出队dequeue,队列有队头head和队尾tail指针。元素总是从队头出,从队尾入。采用数组实现队列时候,为了合理利用空间,可以采用循环实现队列空间的有效利用。
原创
2022-09-09 14:55:05
166阅读
# 数据挖掘导论:Python实现贝叶斯算法
## 一、流程概述
在实现贝叶斯算法的过程中,基本的流程包括以下步骤:数据收集、数据预处理、特征选取、模型训练、模型评估和预测。下面是这一流程的具体步骤展示:
| 步骤 | 描述 |
|--------------|---------------------
关注“Java后端技术全栈”回复“面试”获取全套面试资料非形式地说,算法就是任何定义的计算过程,该
原创
2023-04-25 21:00:34
149阅读
非形式地说,算法就是任何定义的计算过程,该过程取某个值或值的集合作为输入并产生某个值或值的集合作为输出。可以这么理解:算法就是把输入转换成输出的计算步骤的一个序列。为什么要学习算法?长期来看,大脑思考能力是一个人最重要的核心竞争力,而算法是为数不多的能够有效训练大脑思考能力的途径之一。有了这项能力,很多别的程序员解决起来很困难的编程问题在你这里就会迎刃而解。最近很多小伙伴问我要一些 算法 相关的资
原创
2020-12-10 12:19:59
2430阅读
package lhz.algorithm.chapter.six; /** * MAX-HEAPIFY,《算法导论》第六章 * 算法导论原文: * MAX-HEAPIFY is an important 
原创
2011-12-07 22:40:16
9405阅读
点赞
1评论