E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
CS430算法导论
算法(1)-渐进表示(本节无算法)
:45分钟习题课,45分钟上机实践;课程作业:每周一次(一道题)+大作业+思考题;考核:期末考试:35%;期中考试:30%;平时作业+上机作业:15%+思考题大作业:10%;出勤+随堂:10%;教材:
算法导论
陈码工
·
2020-06-26 16:38
无向图判断是否有环并输出环
visit[node]=1;//正在遍历状态//cout";tmp=father[tmp];}cout>&graph){intn=graph.size();vectorvisit(n,0);//visit按照
算法导论
LockettW
·
2020-06-26 14:04
图
排序
算法导论
-----动态规划是什么
目录一、动态规划概述二、动态规划三要素三、动态规划和静态规划的关系四、仅有动态规划是不够的—–贪婪策略的出现五、参考资料 《
算法导论
》中并没有把动态规划的来龙去脉介绍清楚,网上很多讲解都是动态规划的数学模型
GNG
·
2020-06-26 13:45
算法导论
《算法导论》笔记
本科生如何学习计算机科学与技术
其中包括C、C++,
算法导论
,数据结构,数电模电,计算机组成原理,微机原理,汇编语言,计算机网络,编译原理,计算机体系结构,操作系统。都是很基础的课程。说实话,能将以上课程都融
宁负天下为伊人
·
2020-06-26 13:23
随笔
『经典DP入门』LCS 最长公共子序列问题
注:本文的大多数概念及求解方法来自《
算法导论
》使用动态规划求解LCS问题过程:一、刻画最长公共子序列的特征LCS的最优子结构定理:设X={x1,x2,……,xm}和Y={y1,y2,……,yn}为两个序列
Miserable_ccf
·
2020-06-26 12:21
学不会的DP
学习
算法导论
——红黑树旋转插入和删除
参考:《
算法导论
》红黑树(一)原理和算法详细介绍浅谈算法和数据结构:九平衡查找树之红黑树红黑树是一棵二叉搜索树,每个节点有一个标志位表示颜色,该颜色可以是红(RED)或黑(BLACK)。
小咸鱼_
·
2020-06-26 11:41
Algorithms
算法导论
---堆排序Java代码实现
packageSearch;//堆排序算法实现publicclassHeapSort1{publicstaticvoidmain(String[]args){intarr[]={4,1,3,2,16,9,10,14,8,7};HeapSort1hs1=newHeapSort1();hs1.HeapSort(arr,arr.length);hs1.Print(arr);}//节点i的父亲节点是i/2
shitiezhu
·
2020-06-26 09:11
算法导论
【剑指offer】快速排序
前几天看到了一个要对链表进行快排的,由于单向链表的特殊性,没法从后像前,书里的这种方法可以用在链表上,《
算法导论
》上好像也是这种实现。在书中所
shiquxinkong
·
2020-06-26 09:32
基础算法
Python实现 《
算法导论
第三版》中的算法 第7章 快速排序
目录第7章快速排序1.快速排序2.多种写法总结第7章快速排序1.快速排序快速排序是一种最坏情况时间复杂度为Θ(n2)\Theta(n^2)Θ(n2)的排序算法。虽然最坏情况很差,但是快速排序通常是实际排序应用中最好的选择。因为它的平均性能非常好:期望时间复杂度为Θ(nlgn)\Theta(nlgn)Θ(nlgn),而且其中隐含的常数因子非常小。另外,它还是原址排序,空间复杂度为O(1)O(1)O(
schdut
·
2020-06-26 09:16
默认
算法
Python
Python实现 《
算法导论
第三版》中的算法 第2章 算法基础
目录第2章算法基础1.插入排序2.归并排序3.选择排序4.冒泡排序5.我喜欢的归并排序写法第2章算法基础1.插入排序P10。插入排序比较简单。classInsertionSort:defsort(self,A):foriinrange(1,len(A)):temp=A[i]j=i-1whilej>=0andA[j]>temp:A[j+1]=A[j]j-=1A[j+1]=temp#不满条件的下一个位
schdut
·
2020-06-26 09:16
默认
Python
算法
如何判断计算机的快慢?
参考《
算法导论
》p6p_6p6~p7p_7p7。为什么要学算法?就是想设计出的算法让计算机跑的更快嘛,那怎么判断计算机运行的快慢?或者不同算法在同一台计算机上的运行时间如何比较?
sweird
·
2020-06-26 06:40
算法
经典算法---插入排序 insert-sort
时间复杂度:O(n2)O(n^2)O(n2)在
算法导论
中“算法分析”一节就是以“插入排序”为例分析的,已经分析的很清楚了,最好情况下,即已经排好序的情况下,只有外层循环,所以时间复杂度为O(n)O(n)
sweird
·
2020-06-26 06:40
算法
算法导论
详解(5) 第六章 堆排序
在第二章介绍了两种排序算法,第六章将介绍第三种排序算法:堆排序(heapsort),以及基于堆排序的优先队列。空间原址性(inplace):仅有常数个元素需要在排序过程中存储在数组之外。堆(6.1,P84)堆,也叫二叉堆,是一个数组,可以看作近似的完全二叉树,树的每个节点对应数组一个元素。表示堆的数组A包括两个属性:A.length给出数组元素的个数;A.heap-size给出有多少个元素存储在该
qwerty200696
·
2020-06-26 04:05
Algorithm
算法导论
详解(6) 第七章 快速排序
算法导论
详解(6)第七章快速排序快速排序简介快排最坏情况O(n2),但平均效率O(nlgn),而且O(nlgn)隐含的常数因子很小,快排可以说是最快的排序算法,并非浪得虚名。另外它还是原址排序。
qwerty200696
·
2020-06-26 04:05
Algorithm
算法导论
详解(8) 第十章 基本数据结构
本章介绍几种基本的结构:栈、队列、链表和有根树。栈和队列(10.1,P129)栈和队列都是动态集合。栈stack概念定义:栈采用先进后出策略(LIFO)。基本操作是压入(PUSH)和弹出(POP)。如果s.top=0,表示栈空,如果试图对空栈进行POP操作会发生下溢(underflow)。如果s.top>n,表示栈满,如果进行PUSH操作会发生上溢(overflow)。栈的Python实现代码链接
qwerty200696
·
2020-06-26 04:34
Algorithm
Python
python
数据结构
算法导论
链表
算法导论
详解(7) 第八章 线性排序算法
任何比较排序在最坏情况下都要经过Θ(nlgn)次比较。本文介绍三种线性时间排序的算法:计数排序,基数排序以及桶排序。因此,这些都不属于比较排序。本文所有实现代码均已放在GitHub上,欢迎查看:GitHub链接本章概述非比较排序指使用一些非比较的操作来确定排序顺序的排序算法,对于非比较排序,下界O(nlgn)不适用。计数排序是稳定排序,若n个数据的取值范围是[0..k],则运行时间为O(n+k),
qwerty200696
·
2020-06-26 04:34
博客搭建系列
Algorithm
算法导论
详解(9) 第十一章 散列表
直接寻址表(direct-addresstable)缺点:如果全域U很大,分配直接寻址表T也不太现实;另一方面,实际存储的关键字集合K相对于U来说可能很小,导致浪费空间。散列表综述散列表(hashtable,也叫哈希表),支持INSERT、SEARCH、DELETE操作。散列表可以使得在表小的情况下仍能够保存数据,并且能够在常数时间O(1)内完成查询。为什么是常数时间呢?因为我们不需要比较,不需要
qwerty200696
·
2020-06-26 04:34
Algorithm
2020学习计划
今年目标是打算把编程者思想和
算法导论
看完,有其它空余的时间的话看看Jdk重要的源码,Jdk源码真的太多了,我没有太多时间去一一看了,我自己之前看了一部分源码,如HashMap、List、Thread,我感觉源码设计的非常的精妙
代码忘烦恼
·
2020-06-26 04:55
随笔
左耳朵耗子的技术书籍建议
如:
算法导论
,TCP/IP详解,Unix高级环境编程…….其次是Wikipedia(英文)上了解知识地图!2)经验总结的首选看书,如effectiveJava/c++,重构,代码大全
laiczhang
·
2020-06-26 03:29
道听途说
看这里!C++程序猿必读九本服务器开发经典书籍
一、算法基础系列数据结构基础(C语言版)》朱仲涛译《剑指Offer》《编程之美》《编程珠玑》《CareerCup-Top150Questions4th》《[
算法导论
].
键盘舞蹈者
·
2020-06-26 00:46
C语言
C++
编程
JAVA桥接模式
数据结构、编译原理、软件工程、
算法导论
、离散数学、....这些,从30年前大学开启计算机这门学科开始就没怎么变过。换句话说这些东西是内功想以后走的远,内功不高,怕是成就一般哦!
终了!我只想当房东
·
2020-06-25 18:15
技术总结学习
设计模式
插入排序-递归+二分查找
title:插入排序date:2019-07-2109:58:02summary:插入排序-迭代+二分查找(Insertion-Sort)categories:数据结构和算法tags:[LeetCode,
算法导论
Jiavg_csdn
·
2020-06-25 18:24
LeetCode
算法
数据结构
插入排序-递归实现
:插入排序(递归实现)date:2019-07-2010:18:26summary:插入排序-递归实现(Insertion-Sort)categories:数据结构和算法tags:[LeetCode,
算法导论
Jiavg_csdn
·
2020-06-25 18:24
LeetCode
算法
数据导论
归并排序
title:归并排序date:2019-07-1921:16:15summary:归并排序(Merge-Sort)categories:数据结构和算法tags:[LeetCode,
算法导论
]题目:leetcode
Jiavg_csdn
·
2020-06-25 18:24
LeetCode
算法
数据结构
归并排序
A*
算法导论
1导言1.1算法1.2Dijkstra算法与最佳优先搜索1.3A算法2启发式算法2.1A对启发式函数的使用2.2速度还是精确度?2.3衡量单位2.4精确的启发式函数2.4.1预计算的精确启发式函数2.4.2线性精确启发式算法2.5网格地图中的启发式算法2.5.1曼哈顿距离2.5.2对角线距离2.5.3欧几里得距离2.5.4平方后的欧几里得距离2.5.5Breakingties2.5.6区域搜索3I
QQ317392507
·
2020-06-25 17:02
算法
机器学习中的数学(四):线性回归,偏差、方差权衡
前言机器学习绝对不是一个一个孤立的算法堆砌起来的,想要像看《
算法导论
》这样看机器学习是个不可取的方法,机器学习里面有几个东西一直贯穿全书,比如说数据的分布、最大似然(以及求极值的几个方法,不过这个比较数学了
孙ちゃん(颖)♂
·
2020-06-25 13:08
机器学习
人工智能
线性回归
算法导论
---算法分析----归并排序---005
/*归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(DivideandConquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并。算法描述把长度为n的输入序列分成两个长度为n/2的子序列;对这两个子序列分别采用归并排序;将两个排序好的子序列合并成一个最终的排序序列。算法
Alisck
·
2020-06-25 11:23
算法导论
算法导论
---算法分析----快速排序---002
快速排序(Quicksort)是对冒泡排序的一种改进。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。算法介绍快排图设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它
Alisck
·
2020-06-25 11:22
算法导论
计数排序python实现及分析
以《
算法导论
》这本书的一个例子进行说明:初始化数组:A[
Hello_Piemon
·
2020-06-25 10:56
算法
你所需要思考的功能测试
作为一个软件测试员,具备算法思维、软件工程意识以及测试基本知识,如:用例编写,最好可以学习一门语言,可以看看:数据结构、
算法导论
、软件工程、软件测试艺术、c++语言或java语言书籍等;好的软件测试员不仅仅学会职场生存技能
ai测试
·
2020-06-25 04:54
软件测试
工具
自动化测试
软件测试
自动化测试
杂谈
1.
算法导论
(第2版)2.代码大全(第2版)3.C++Primer中文版(第4版)4.设计模式:可复用面向对象软件的基础5.浪潮之巅6.Java编程思想(第4版)7.Java核心技术卷1:基础
夕阳飞翔
·
2020-06-25 04:05
我的书籍清单
核心技术卷ⅠⅡ》《代码大全》《代码整洁之道》《java8实战》《java性能权威指南》《java并发编程实战》《程序员修炼之道》《efficitiveinjava》《深入理解java虚拟机》(周志明)《
算法导论
孟宝宝
·
2020-06-25 01:57
书单
7月份之前的技术学习与计划
读书计划基础方面算法:《算法》,《
算法导论
》,需要认真理解算法,并独立完成相关习题语言:《JAVA编程思想》,《EffectiveJAVA》,《JAVAScript高级编程》脚本语言:PYTHON(非迫切
seelight
·
2020-06-25 01:00
算法科学经典书籍——《
算法导论
》自序
在计算机出现之前,就有了算法。现在有了计算机,就需要更多的算法,算法是计算的核心。本书提供了对当代计算机算法研究的一个全面、综合的介绍。书中给出了多个算法,并对它们进行了较为深入的分析,使得这些算法的设计和分析易于被各个层次的读者所理解。我们力求在不牺牲分析的深度和数学严密性的前提下,给出深入浅出的说明。书中每一章都给出了一个算法、一种算法设计技术、一个应用领域或一个相关的主题。算法是用英语和一种
qq_22213889
·
2020-06-25 01:49
算法
算法导论
第三课(fibonacci,二分查找,归并排序)
3.1乘方实现A:实现方法乘方实现有两种方法,一个是使用O(N)的时间复杂度还有种方法可以使用递归的方式,递归的公式如下通过两种方式的实现,可以进行比较两种方法的时间复杂度B:时间复杂度第二种方法的递归表达式如下通过主定理可以算出第二种的时间复杂度为O(lgn)C:两种方法的时间比较结果分析:从上面可以看出当次方比较小的时候,第一种方法即时间复杂度为O(N)的算法是比较优的,而当次方比较大的时候,
猪先生1994
·
2020-06-25 00:25
算法导论
非CS专业的人如何学才能够像CS专业一样
电子技术:如何焊接二极管离散数学:既在数学课上看英文题的基础上,增加美术的部分程序设计:学习用十种方式在黑黑的框里输出helloworld数据结构:学会如何爬树
算法导论
:如何写出别人看不懂的代——LeetCode
南山二毛
·
2020-06-24 23:03
生活随想
数据结构与算法(八)—— 树结构及其实现和应用
注:本篇内容参考了《Java常用算法手册》、《大话数据结构》和《
算法导论
(第三版)》三本书籍。本人水平有限,文中如有错误或其它不妥之处,欢迎大家指正!
Ethan-cw
·
2020-06-24 22:19
数据结构与算法
教你从头到尾彻底理解KMP算法
作者:July、saturnma时间;二零一一年一月一日-----------------------本文参考:数据结构(c语言版)李云清等编著、
算法导论
作者声明:个人July对此24个经典算法系列,享有版权
power721
·
2020-06-24 20:51
ACM算法
算法
function
string
正则表达式
delete
文本编辑
斐波那契散列
斐波那契散列法其实是一种特殊的乘法散列,先来看乘法散列.根据
算法导论
第2版中的定义,构造乘法散列函数包含两个步骤。
plussai
·
2020-06-24 20:01
数据结构算法
闲扯B-Tree和B+Tree的异同
(详细的大家可以在百度上搜一下定义,或者拿起那本厚实的「
算法导论
」看看)。#异#但是B树和B+树却有不同的地方。就是这些不同的地方,决定了他们的用处可能不一样。我画了一个不太漂亮的B树的图。
执着更专业
·
2020-06-24 19:47
php
搜索引擎
原理方面的东西
算法导论
第三版习题7.2
7.2-1令Θ(n)=cn,带入递归式可得:T(n)=T(n−1)+Θ(n)=T(n−1)+cn=c∑i=1ni=c⋅n(n+1)2=Θ(n2)7.2-2当数组A的所有元素都具有相同值时,此时出现最坏情况,每次划分会出现大小为0和n−1的子数组,此时时间复杂度为Θ(n2)。7.2-3当数组A的所有元素不同,且按降序排列时,那么每次PARTITION操作都会划分出大小为0和n−1的两个子数组,出现的
obguy
·
2020-06-24 18:19
算法
算法导论
第三版第8章思考题
8-1a.因为对于每一种输入,不可能能够到达同一片叶子,所以一共有n!片子是可以到达的。其次因为输入完全随机,每种输入概率相等且到叶子结点的路径是固定的,这n!个叶子结点的概率也是相等的,为1n!。b.一共有k个叶子节点,那么一定会有k条从叶子节点到根结点的路径,所有的路径要么会经过T的左孩子节点,要么经过它的右孩子节点,即所有k条路径都会从T的左孩子节点或右孩子节点出发。然后这k条路径从根节点到
obguy
·
2020-06-24 18:19
算法
堆排序建堆复杂度为O(n)的证明
好一点的对复杂度进行了分析,但是讲到建堆复杂度,就一笔带过或者说请参考
算法导论
××页。我觉得求建堆复杂度并不难,了解一下对于理解堆排序是有好处的,下文为求解过程。
mtawaken
·
2020-06-24 16:20
算法
算法导论
代码 第20章 斐波那契堆
第20章斐波那契堆#include#include#include#include#include#includetypedefstructfib_heap*heap;structheap_node{void*key;intdegree;boolmark;structheap_node*child;structheap_node*left;structheap_node*right;structh
MoXiaopeng
·
2020-06-24 15:22
算法
算法导论
第23章 最小生成树
一、综述1.minimum-spanning-treeproblem2.Kruskal'salgorithmInKruskal'salgorithm,thesetAisaforest.ThesafeedgeaddedtoAisalwaysaleast-weightedgeinthegraphthatconnectstwodistinctcomponents.3.Prim'salgorithmInP
windmissing
·
2020-06-24 15:18
算法导论
算法导论
-14.3-6-MIN-GAP
一、题目请说明如何维护一个支持操作MIN-GAP的动态数据集Q,使得该操作能够给出Q中两个数之间的最小差幅。例如,Q={1,5,9,15,18,22},则MIN-GAP(Q)返回18-15=3,因为15和18是其中最近的两个数。使用操作INSERT,DELETE,SEARCH和MIN-GAP尽可能高效,并分析它们的运行时间。二、思考步骤1:基础数据结构红黑树,数组中的数值分别作为每个结点的关键字步
windmissing
·
2020-06-24 15:18
算法导论
算法导论
第21章 21-2 深度确定
一、题目二、代码/*UnionFindSet.h并查集,非递归方法,含路径压缩,数组从0开始*/#includeusingnamespacestd;#defineMAXN30005classUFS{public:intn;intp[MAXN+1];//集合根结点intrank[MAXN+1];//集合中点的个数intdepth[MAXN+1];public:UFS(intsize=MAXN);vo
windmissing
·
2020-06-24 15:18
算法导论
算法导论
第22章 图算法 22.2 广度优先搜索
用邻接矩阵实现的BFS见
算法导论
-22.2-3-邻接矩阵实现图的广度优先搜索二、代码1.Link_Graph.h#include#includeusingnamespacestd;#defineN100
windmissing
·
2020-06-24 15:18
算法导论
《算法导论》答案
算法导论
-第11章-散列表
一、概念1.综述散表表仅支持INSERT、SEARCH、DELETE操作。把关键字k映射到槽h(k)上的过程称为散列。多个关键字映射到同一个数组下标位置称为碰撞。好的散列函数应使每个关键字都等可能地散列到m个槽位中2.散表函数(1)若函数为h(k)=k,就是直接寻址表(2)除法散列法:h(k)=kmodm(3)乘法散列法:h(k)=m*(k*Amod1)(0usingnamespacestd;in
windmissing
·
2020-06-24 15:45
算法导论
《算法导论》答案
算法导论
第21章 用于不相交集合的数据结构
一、综述不相交集合数据结构(disjoint-setdatastruct)保持一组不相交的动态集合S={S1,S2,……,Sk}这种数组结构支持三种操作:(1)MAKE-SET(x):构造一种只有元素x的集合(2)UNION(x,y):合并两个集合(3)FIND-SET(x):找出元素x所属的集合二、代码1.UnionFindSet.h/*UnionFindSet.h并查集,非递归方法,含路径压缩
windmissing
·
2020-06-24 15:14
算法导论
《算法导论》答案
上一页
30
31
32
33
34
35
36
37
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他