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
算法导论——python实践
算法导论
学习笔记 第6章 堆排序
在本章中介绍了另一种排序算法:堆排序(heapsort)。与归排序一样,但不同于插入排序的是,堆排序的时间复杂度式(Onlgn)。而与插入排序相同,但不同于归并排序的是,堆排序同样具有空间原址性(我理解的意思是可以实现就地排序):任何时候都只需要常数个额外的元素空间存储临时数据。因此,堆排序是集合了归并排序和插入排序两种排序算法有点的一种排序算法。堆的定义如下:堆是一个数组,它可以被看成一个近似的
智享AI
·
2020-08-11 02:06
算法
程序设计
模式匹配朴素算法习题
算法导论
P559
intIndex_for_CLRS(char*f,char*c){ints,fi,ci,lf,lc;s=0;lf=strlen(f);lc=strlen(c);for(fi=ci=0;s1?ci:1;//这里要注意答案有误fi=s;ci=0;}}if(s>lf-lc)return0;//出口1:位移超过了elsereturns+1;}32:1-2AssumeallthecharactersofPa
Sleepwalker2013
·
2020-08-11 01:06
算法导论
-二分查找
#Author:Liusw#查找问题importmath#nums是升序defsearchNum(nums,target):#先将数组nums进行排序#nums=insertionSort(nums,"asc")#print()result=Falsemiddle=math.floor((len(nums)-1)/2)ifnums[middle]==target:result=Trueelifnu
夜深静处
·
2020-08-11 01:49
算法导论
算法导论
复习总结
一、概述1.算法表述自然语言(ENGLISH)算法描述语言(Pseudo-code)计算机程序语言(C++,Java)硬件设计(DSP)2.算法一般特性**正确性:**对于符合输入类型的任意输入数据,都产生正确的输出**有效性:**每一步指令能够被有效的执行,并且规定了指令的执行效果,结果应该具有的数据类型,而且是可以预期的**确定性:**每一步之后都要有确定的下一步指令**有穷性:**有限步内结
yin__ren
·
2020-08-11 01:55
数据结构与算法篇
算法导论
-动态规划
动态规划算法动态规划(dynamicprogramming)是通过组合子问题来求解原问题的方法,它应用于解决子问题重叠的情况,即不同子问题具有公共的子问题。通常动态规划可以按照如下四个步骤进行设计:1.刻画一个最优解的结构特征;2.递归地定义最优解的值;3.计算最优解的值,通常采用自底向上的方法;4.利用计算出的信息构造一个最优解(按照要求,可有可无)。一、钢条切割问题自顶向下递归实现CUT-RO
How far is forever
·
2020-08-11 00:48
算法导论
LCA-Tarjan,RMQ,倍增算法超详细原理讲解+
python实践
(Lowest Common Ancestor of a Binary Tree)
最近公共祖先算法:通常解决这类问题有两种方法:在线算法和离线算法在线算法:每次读入一个查询,处理这个查询,给出答案离线算法:一次性读入所有查询,统一进行处理,给出所有答案我们接下来介绍一种离线算法:Tarjan,两种在线算法:RMQ,倍增算法Tarjan的时间复杂度是O(n+q)RMQ是一种先进行O(nlogn)预处理,然后O(1)在线查询的算法。倍增算法是一种时间复杂度O((n+q)logn)的
weixin_42001089
·
2020-08-11 00:06
算法
大数素数判断及质因子分解
对于一个longlong范围或者更大的数,怎么快速判断一个数是不是素数,就要用到Miller_Rabin算法.立用a^(n-1)=1(modn)怎么来的就不解释了,有兴趣的同学可以看看
算法导论
P566有详细推导
EW_DUST
·
2020-08-10 20:27
数论
(
算法导论
4.1)
package最大子数组;importjava.util.Arrays;/**动态规划方法解决最大子数组问题**/publicclassSolution{publicstaticvoidmain(String[]args){//TODO自动生成的方法存根int[]arr=newint[]{13,-3,-25,20,-3,-16,-23,18,20,-7,12,-5,-22,15,-4};int[]
舒酱酱酱酱酱
·
2020-08-10 19:17
算法导论
算法导论
期末复习(一)
冒泡排序:for循环从第一个元素开始遍历直到n-1,for循环从index+1开始到n-1将元素和后面的元素比较,遇到大的就交换直到遍历到最后一个,将最沉的交换到最后面,index+1蛮力法时间效率O(pow(n,2))快速排序:取一个标杆,从标杆左边向右开始遍历,右边向左开始遍历,左边找大于标杆的元素,右边找小于标杆的元素,做交换,直到左边和右边相遇,将标杆放在相遇位置对标杆左侧和右侧执行上面的
mr_guo_lei
·
2020-08-10 18:19
算法导论笔记
【洛谷模板题 最小生成树】kruskal算法入门
Kruskal算法最小生成树算法知识点:
算法导论
第23章:最小生成树#include#include#include#include#includeusingnamespacestd;structEdge
Salmon_lee
·
2020-08-10 17:39
编程题
最大子数组问题(动态规划)--【
算法导论
】
前些天学车...真是相当累啊,比上课累,现在终于可以休息了...重新看《
算法导论
》,不过这下可得认真看了,9个月不到就得去找工作了,与我同样的大三党们一样加油咯...
iteye_1287
·
2020-08-10 17:14
《
算法导论
》第六章-优先级队列(伪代码)
优先级队列伪代码://返回优先级队列的最大值Heap_Max(A)returnA[1]end运行时间为Θ(1)//去掉并返回优先级队列中的最大值/**先记录最大值,将数组最后的元素与第一个元素交换,数组大小减一,*调用max_heapify函数保证最大堆的性质,最后返回最大值。*/Heap_Extract_Max(A,length)iflength=A[i])Heap_Increase_Key(A
huangxiaominglipeng
·
2020-08-10 16:56
每天一道笔试题
动态规划入门详解 内含12道经典动态规划编程题
算法导论
中介绍,动态规划和分治方法类似,都是听过子问题的解来解决原问题。
幼稚柚子
·
2020-08-10 16:02
python 与算法
关于sage/python/maxima的介绍参看:study3_开源科学软件简介1、算法
算法导论
学习笔记:http://www.wutianqi.com/?
wukk007
·
2020-08-10 16:08
python
机器学习
(Java实现) 活动选择
活动选择的类似问题都可以这么写importjava.util.ArrayList;publicclasshuodongxuanze{/***//
算法导论
中活动选择问题动态规划求解*@params活动的开始时间
a1439775520
·
2020-08-10 15:59
WUST
题解 P1091 【合唱队形】洛谷
伪代码来一发(中文,类似于《
算法导论
》)fori=1到nforj=0到i-1如果a[i]>a[j]那么f[i]=较大(f[i],f[j]+1);//f维护动态规划。再来一个从后往前的实现方法同上。
Calix_Guo
·
2020-08-10 13:45
用最小堆优化 Dijkstra 算法
偷一份
算法导论
dj算法的伪代码:DIJKSTRA(G,w,s)1INITIALIZE-SINGLE-SOURCE(G,s)2S←Ø3Q←V[G]//V*O(1)4whileQ≠Ø5dou←EXTRACT-MIN
Hitaku
·
2020-08-10 11:02
动态优化: 最大子序号和
可以化成’如何求解股票利益最大化’的题(
算法导论
)2.Solu
陈浩爱学习
·
2020-08-10 07:19
java
并查集学习
拿起《
算法导论
》看完不相交集合这章,顿然茅塞顿开,终于完成并查集的基础知识的学习。《
算法导论
》真是牛××不相交集合有两种不同的实现,链表表示和带路径压缩的按秩合并策略。
代码随想录
·
2020-08-10 05:03
并查集
算法导论
学习笔记(15)——用于不相交集合的数据结构
用于不相交集合的数据结构总结:这一章讲了并查集的相关概念,以及主要的MAKE-SET,UNION,FIND-SET操作,并给出了并查集的链表表示和森林表示方式。1.不相交集合上的操作不相交集合数据结构保持一组不相交的动态集合,每个集合通过一个代表来标识,代表即集合中的某个成员。一些操作:MAKE-SET(x):建立一个新的集合,其唯一成员为x。UNION(x,y):将包含x和y的动态集合合并为一个
xiangzhang321
·
2020-08-10 04:59
算法导论
最长公共子序列(LCS)问题分析
最长公共子序列(LCS)网上的资料很多,而且也可以算是动态规划里面的一个基本问题,它体现了许多动态规划的特性,
算法导论
这本书也给出了很详细的说明。
明何
·
2020-08-10 02:18
算法
算法导论
第二十一章:不相交集合的数据结构
不相交集合(Disjoint-set)数据结构保持一组不相交的动态集合S={S(1),S(2),...,S(k)}.每个集合通过一个代表(representative)来识别,即集合中的某个成员。设x表示一个对象,不相交集合支持操作:MAKE-SET(x):建立一个新的结合,其唯一成员(也即代表)就是x。因为各集合是不相交的,故要求x没有在其他集合中出现过。UNION(x,y):将包含x和y的动态
iffTimes
·
2020-08-10 01:08
Data
Structure
and
Algorithms
《
算法导论
》笔记(16) 单源最短路径 部分习题
习题21.1-3Bellman-Ford算法改进为m+1次松弛后终止。图中结点若在s->v的路径中则作标记。松弛过程中,若有标记的结点全部不更新v值,则停止。此时松弛次数为m+1趟。习题21.1-5松弛方法改为结点已有d值,对其所有入边选择w+d0则向左下移动,否则返回本结点。如此则插入与查找的时间均为O(lgW)。Dijkstra算法需要将遍历V个结点,每次在二叉树中查找一次,并且对E条边每条都
nklofy
·
2020-08-09 22:52
《算法导论》笔记
《
算法导论
》第7章 快速排序 (四种变形)
1.Hoare快排Hoare划分是最初的版本,与《
算法导论
》中的划分版本相比,它选取第一个元素A[p]为主元。划分后的两部分是:A[
iteye_3224
·
2020-08-09 21:42
算法导论
之用于不相交集合的数据结构
不相交集合,即集合内元素无交集。在一些具体应用中,需将n个不同的元素分成一组不相交的集合。不相交集合的两个重要操作,找出给定元素所属的集合和合并两个集合。为支持不相交集合的操作,需要设计和维护数据结构来满足。导论中给出了链表和有根树两类数据结构来支持不相交集合的操作。1、不相交集合的基本定义不相交集合数据结构保持一组不相交的动态集合S={S1,S2,…,Sk}。每个集合通过一个代表来识别,代表即集
fjssharpsword
·
2020-08-09 20:27
Algorithm
算法导论专栏
算法导论
_第十六章_动态规划
算法导论
对动态规划的解
chudongfang2015
·
2020-08-09 20:16
算法
ACM_动态规划
[转]ACM国际大学生程序设计竞赛试题与解析
傅清祥,王晓东编著,我所见过的最好的算法教材)程序设计导引及在线实践作者:李文新ACM程序设计培训教程吴昊基础提高:算法艺术与信息学竞赛第二版刘汝佳算法设计与分析王晓东算法设计与试验题解王晓东科曼:《
算法导论
Ididcan
·
2020-08-09 18:56
ACM
数据结构与算法复习(7)—— 并查集
Postedbychenyajunin数据结构与算法|Tags:并查集http://hi.baidu.com/xiafb/blog/item/96649c50562b95688435242b.html参考
算法导论
第
baisung
·
2020-08-09 17:58
算法理论
数据结构
UVa #437 The Tower of Babylon (例题9-2)
记忆化搜索,前两天看mit
算法导论
公开课里面Charles说这个memoization不算是动态规划,递推的才是。。
专攻挖掘机炒鸡蛋算法
·
2020-08-09 05:02
第九章
-
动态规划初步
UVa
算法竞赛入门经典
ACM
【
算法导论
】 二叉搜索树、AVL树、和红黑树
二叉搜索树二叉搜索树是一颗二叉树或一颗空树且满足以下性质:1)根节点x的key值大于任意左子树上节点的key值,小于右子树上任意节点的key值;2)其左右子树也分别是一颗二叉搜索树。使用二叉搜索树进行查找时间复杂度为O(h),且n≥h≥log(n+1);那么时间复杂度上限为O(n)、下限为Ω(logn),且h趋于n的情况远远小于趋于logn的情况,那么渐进时间复杂度为Θ(logn).树的插入只需依
zhanw15
·
2020-08-09 04:23
算法导论
算法导论
第三版(参照自己理解和网上的答案,仅供自己学习)
第一章1.1-1给出现实生活中需要排序的一个例子或者现实生活中需要计算凸壳的一个例子答:(1)排序:在网上购物挑选物品过程中需要按照某种规则筛选(如按照价格由低到高),这种我自己认为是当前最简单的现实生活中需要排序的的小例子。(2)计算凸壳:计算一个点集合的直径(官方给的答案)1.1-2除速度外,在真实环境中还可能使用哪些其他有关效率的量度?答:在同样的工作量下,完成这样的工作量所耗费的时间最短则
yangjinyi1314
·
2020-08-09 03:47
算法
算法导论
第32章 详解字符串的匹配,自动机,KMP算法
虽然没有怎么看过其他的算法书,但是觉得
算法导论
虽然在证明,把问题形式化方面稍微有点罗嗦了,但是感觉还是不错了,它不会直接抛给你一个最有效的算法,然后直接跟你讲,它会从最朴素的算法逐渐讲更有效率的算法,这样让读者对问题有更清晰的把握
Kawisa
·
2020-08-09 03:30
算法导论
关于伪代码
《
算法导论
》中的伪码可以让我们更加关注算法本身而不是实现,是一种很优美的表达方式,比直接看代码要更直接,所以我自己也要慢慢学着写伪码。
whuslei
·
2020-08-09 02:07
算法和数据结构
求最大流Ford-Fulkerson方法(Edmonds-Karp算法)
基本思路:
算法导论
第26章使用反平行边来模拟残存网络。在残存网络中用广搜来寻找增广路径(用pre数组记录前驱结点)。
wenhai_dai
·
2020-08-09 02:53
算法
算法导论
——字符串搜索FiniteMachine有限状态机实现
算法导论
——字符串搜索FiniteMachine有限状态机实现理论实践Program.csFiniteMachine.cs数字逻辑、计组等等我们都遇到过有限状态机,如Moore机,Mealy机。
DeadPool loves Star
·
2020-08-09 02:35
算法学习
10天精读掌握《SICP》 第2天 2019.2.26
10天精读掌握《SICP-计算机程序的构造和解释》第2天2019/2.261.10日掌握
算法导论
计划概览2.今日学习成果3.今日时间表4.Atimelogger截图今天是2年修完清华6个CS类硕士学位第
彪悍的人生不需要解释哈
·
2020-08-09 01:58
SICP
算法导论
/第一部分_基础知识
算法导论
:基础知识Chapter1算法在计算中的作用1.1算法1.2作为技术的算法Chapter2算法基础2.1插入排序练习:2.2分析算法插入算法的分析增长量级练习2.3设计算法2.3.1分治法2.3.2
DuanwuCHEN
·
2020-08-09 01:38
算法
字符串匹配算法——利用有限自动机进行匹配
本文内容与《
算法导论
》中字符串匹配章节相关并部分摘录。常用的字符串匹配算法有朴素字符串匹配算法,Rabin-Karp算法,利用有限自动机进行字符串匹配和KMP算法等。前面两种比较简单,重点是后面两种。
weixin_33834679
·
2020-08-09 00:37
字符串匹配(string matching)算法之一 (Naive and Rabin_Karp)
内容来自《
算法导论
》《Introductiontoalgorithms》作者CLRS编辑byTouzanihttp://blog.csdn.net/touzani/archive/2007/05/29/
touzani
·
2020-08-08 22:03
数据结构与算法
利用有限自动机进行字符串匹配
原理我简单说两句,详细原理大家请参考《
算法导论
》第32章P563-P567,至于自动机原理,请参考其他编译原理书籍。说明:Pk=P[1..k],表示模式P的前缀,也就是其前k个字符。
sysu_arui
·
2020-08-08 21:26
Algorithm
C#LeetCode刷题,走进Google,走近人生
概述本系列博文将会向大家介绍本人在钻研《
算法导论
第3版》过程中的点点滴滴,并使用C#语言实现该书中所有的经典算法,附带相应的时间复杂度分析。
比特飞
·
2020-08-08 21:00
C#经典算法实践,回顾往生,更是致敬《
算法导论
》
概述本系列博文将会向大家介绍本人在钻研《
算法导论
第3版》过程中的点点滴滴,并使用C#语言实现该书中所有的经典算法,附带相应的时间复杂度分析。
比特飞
·
2020-08-08 21:00
数据结构:红黑树解析
本文参考:Google、
算法导论
、STL源码剖析、计算机程序设计艺术。
cynwang
·
2020-08-08 15:03
数据结构
Java实现
算法导论
中有限自动机字符串匹配算法
这里实现了基于有限自动机(FiniteAutomaton,FA)的模式匹配算法,算法的重点在于利用字符串的前后缀构造模式P的自动机,具体结合导论中的说明来理解,可参考http://www.geeksforgeeks.org/searching-for-patterns-set-5-finite-automata/理解,参考代码如下:packagecn.ansj;publicclassAtuomat
fjssharpsword
·
2020-08-08 15:19
Algorithm
Java
算法导论专栏
字符串匹配算法 之 基于DFA(确定性有限自动机)的字符串模式匹配算法
原文:http://www.91linux.com/html/article/program/cpp/20081017/13581.html理论不再赘述,请参考
算法导论
一书,第32章32.3节利用有限自动机进行字符串匹配
diche7031
·
2020-08-08 15:23
数字图像处理的
python实践
(9)——图像锐化
图像锐化是和平滑相反的操作,目的是为了使模糊的图像变得清晰。既然是相反的目的,那么操作应该也是相反的,平滑使用的是图像邻域的加权求和或者是积分运算,而锐化则是使用求导数(梯度)或有限差分来实现。基于一阶导数的图像增强——梯度算子对于二维的连续函数,在点(x,y)处的梯度为其中两个偏导数的计算公式为梯度的幅值作为变化率的度量,其值如下。为什么要求梯度的幅值?想一下平滑的处理思路,最简单的平均平滑,在
渡边君
·
2020-08-08 14:33
python
数字图像处理的python实践
数字图像处理的
python实践
(12)——频域低通滤波器和高斯低通滤波器
上一章中学习了一维离散傅里叶变换的概念和实现。但在具体的图像中实现还是有点不足,首先我们需要输入图像的尺寸都是2的整数次幂,这个条件太过苛刻了,如果使用Resize又会损失信息。目前还是以熟悉为主,所以选择用numpy自带的方法来进行频域的转换。那么很简单的,首要就是试一下把一张图片从空间域转换到频域上,然后在频域上分解成幅度谱和相位谱,然后再反过来利用幅度谱和相位谱合成一张图片。实现的代码如下,
渡边君
·
2020-08-08 14:01
python
数字图像处理的python实践
hash实现--开放寻址方式
今天看了一下《
算法导论
》第十一章的散列表,里面有一节是关于开发寻址方式。
aa2010aa
·
2020-08-08 13:45
算法
Rabin-Karp 字符串匹配算法
复赛比完了就继续研究些算法呗,然后觉得自己字符串匹配还不会,就去啃了啃
算法导论
,觉得Rabin-Karp挺有意思的就写篇Blog记录一下。
Coder_Num233
·
2020-08-08 12:18
算法笔记
数字图像处理的
python实践
(13)——频域高通高斯滤波和拉普拉斯滤波
图像的锐化可以通过衰减图像频谱中的低频成分来实现,这建立起了空间域图像锐化和频率域高通滤波之间的对应关系。我们想要实现和上一章中高斯低通滤波相反的效果,即高斯高通滤波,实现的方法和上一章的代码基本一致,就是滤波函数有所不同,形式为实现的代码如下,图像还是那熟悉的动漫女头,处理后边缘显得很清晰很突出,而除了边缘外其他的区域的颜色都是浅色。当sigma的数值越大,边缘提取得越精确,但是有可能出现不完整
渡边君
·
2020-08-08 10:41
python
数字图像处理的python实践
上一页
23
24
25
26
27
28
29
30
下一页
按字母分类:
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
其他