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
算法导论-CLRS
个人知识地图
2、python《廖雪峰python》二、linux:《APUE》《UNE》v1、v2《CSAPP》《linux内核设计与实现》、《鸟哥的linux私房菜》三、算法和数据结构《数据结构与算法分析》、《
算法导论
Gonewithmyself
·
2020-08-22 17:47
速成算法笔记,Github上已收获近60K+star!力压LeetCode只为面试
吃透算法套路——只为面试》GitHub连续霸榜首页数周,**star即将突破60k,**受欢迎程度可见一斑:文档的作者最先提出「刷题要掌握模板和套路」的观点,刷题就是应对面试拿offer,再别整什么《
算法导论
欧阳丰
·
2020-08-22 17:09
程序员
算法
数据结构
队列
链表
java
MIT
算法导论
一 简介
本系列文章根据MIT公开课程:
算法导论
,并结合《
算法导论
》进行整理。Analysisofalgorithm算法分析关于计算机程序在效率和资源利用方面的理论研究首先提出几个问题?有比效率更重要的吗?
Alex90
·
2020-08-22 17:52
笔试算法稳了,GitHub 50k Star《labuladong的算法小抄》
GitHubTrending首页,用了两个月Star数便破50k,受欢迎程度由此可见一斑:仓库作者labuladong最先提出「刷题要掌握模板和套路」的观点,刷题就是应对面试拿offer,再别整什么《
算法导论
Sqdmn
·
2020-08-22 16:01
程序员
算法
github
git
强化学习
java
齐姐漫画:排序算法(一)
插入排序借用《
算法导论
》里的例子,就是我们打牌的时候,每新拿一张牌都会把它按顺序插入,这,其实就是插入排序。齐姐声明:虽然我们用打牌的例子,但是可不能学胡适先生啊。对于数组来说怎么做呢?
小齐本齐
·
2020-08-22 15:17
算法-数据结构
算法
排序
算法复杂度
leetcode
“用最小堆将k个已排序链表合并为一个排序链表”(
算法导论
练习6.5-9)
问题:请给出一个时间为O(nlgk),用来将k个已排序链表合并为一个排序链表的算法。此处的n为所有输入链表中元素的总数。(提示:用一个最小堆来做k路合并)编程思路:假设k个链表都是非降序排列的。(1)取k个元素建立最小堆,这k个元素分别是k个链表的第一个元素。建堆的时间复杂度O(k)。(2)堆顶元素就是k个链表中最小的那个元素,取出它。时间复杂度O(1)。(3)若堆顶元素所在链表不为空,则取下一个
zhengzhon
·
2020-08-22 15:11
一些有趣的算法
算法导论
第六章6.5优先队列课后答案。
6.5-1试说明HEAP-EXTRACT-MAX在堆A={15,13,9,5,12,8,7,4,0,6,2,1}上的操作过程。HEAP-EXTRACT-MAX(A)if(A.heap-sizeA[A.heap-size]HEAP-INCREASE-KEY(A,A.heap-size,key)//在key>A[A.heap-size]前提条件满足的情况下,增加A[A.heap-size]值到key实
Flammable_ice
·
2020-08-22 15:01
《算法导论》
初见数据结构与算法
该文章所参考的内容绝大部分来自《算法图解》,少部分来自《
算法导论
》,因此你也可以认为这是《算法图解》的读书笔记。
Thinkingear
·
2020-08-22 13:11
数据结构与算法
初学者
读书笔记
DFT和FFT详解(
算法导论
学习笔记)
代码均为做严格测试,仅供参考分治法基本原理将原问题分解为几个规模较小但类似于原问题的子问题,递归的求解这些子问题。然后再合并这些子问题的解来建立原问题的解。递归求解这些子问题,然后再合并这些子问题的解来建立原问题的解。分治法在分层递归时都有三个步骤:分解原问题为若干子问题,这些子问题是原问题规模较小的实例。解决这些子问题,递归的求解各个子问题。然而若子问题的规模足够小。则直接求解。合并这些子问题的
say_c_box
·
2020-08-22 13:32
算法
FFT
算法导论
fft
算法
分治算法
O(N lgK) 时间内合并K个有序链表
这题也是
算法导论
的作业题。这题的思路如下:1)在每一个链表中取出第一个值,然后把它们放在一个大小为K的数组里,然后把这个数组当成heap,然后把该堆建成最小堆。
风萧萧兮易
·
2020-08-22 12:29
数据结构
【UVA11997】K Smallest Sums 优先队列的多路归并问题
背景给你个有序列表(假设非降序),将其合并为一个列表(这为《
算法导论
》上堆部分一道例题)一种策略是建立一个大小为的小根堆,每个序列第一个元素入堆,标记每个元素所属队列.依次取出,取出后若对应序列还有元素
Hardict
·
2020-08-22 12:21
数据结构-优先队列
骚搞
《
算法导论
》学习分享——摊还分析
17.摊还分析在摊还分析中,我们求数据结构的一个操作序列中所执行的所有操作的平均时间,来评价操作的代价。这样,我们就可以说明一个操作的平均代价是很低的,即使序列中某个单一操作的代价很高。摊还分析不同于平均情况分析,它并不涉及概率,它可以保证最坏情况下每个操作的平均性能。本章介绍三种摊还分析方法:聚合分析核算法势能法首先我们先看两个小问题栈操作对传统的栈操作MULTIPOP(S,k)扩展,伪代码如下
MaoMao
·
2020-08-22 10:27
算法导论
算法
哈希表
二叉堆、堆排序、优先队列、topK问题详解及js实现
说明本文涉及的堆,下标都从0开始,本文算法部分严格按照《
算法导论
》并参照了维基百科1.满二叉树深度为k的二叉树为满二叉树的充要条件是节点数为$$2^{k}-1$$图1.12.完全二叉树满二叉树也是一种完全二叉树图
_ivenj
·
2020-08-22 10:04
算法
二叉堆
优先队列
堆排序
node.js
第二部分--排序和顺序统计学-第6章--堆排序
说明:该系列博客整理自《
算法导论
(原书第二版)》,但更偏重于实用,所以晦涩偏理论的内容未整理,请见谅。另外本人能力有限,如有问题,恳请指正!
黑夜0411
·
2020-08-22 10:15
算法学习笔记——常用十个排序算法汇总
常用排序算法汇总1、插入排序简介:作为
算法导论
上的第一个排序算法,插入排序理解起来不难。
永痕芝兰
·
2020-08-22 04:58
算法笔记
C++
第三部分--数据结构-引言
说明:该系列博客整理自《
算法导论
(原书第二版)》,但更偏重于实用,所以晦涩偏理论的内容未整理,请见谅。另外本人能力有限,如有问题,恳请指正!
黑夜0411
·
2020-08-22 03:36
《
算法导论
》中动态规划习题15-6--在棋盘上移动
问题描述:假设有一张n*n个方格的棋盘以及一个棋子,必须根据以下的规则把棋子从棋盘的底边移动到棋盘的顶边,在每一步你可以把棋子移动到三个方格中的一个:1、正上方的方格。2、左上方的方格(只能当这个棋子不在最左列的时候)3、右上方的方格(只能当这个棋子不在最右列的时候)每次从方格x移动到方格y,会得到p(x,y)块钱。已知所有(x,y)的p(x,y),只要从x到y的移动是合法的。不要假设p(x,y)
jtlyuan
·
2020-08-22 01:18
数据结构与算法
如何阅读计算机科学类的书
这其中不乏《21天学会JAVA》这样的语言入门书籍,也有《
算法导论
》这样的专题书籍,也有《人月神话》这样关于软件管理学的实用性的书籍。
原文链接
·
2020-08-22 01:43
读书
动态规划+最长回文子串
掌握经典的动态规划问题的解法,理解状态的定义的由来、会列出状态转移方程;然后再配合适当难度的问题的练习;有时间和感兴趣的话可以做一些不太常见的类型的问题,拓宽视野;「动态规划」讲得比较好的经典书籍是《
算法导论
JIAY_WX
·
2020-08-22 00:46
【面经笔记】好未来 - 已挂
2、输入流的频率TOPk问题,引出堆的实现我先实现了
算法导论
中自顶向下的维护堆的函数MAX_HEAPIFY()。
xiaxzhou
·
2020-08-21 23:57
面试题
面试题
算法导论
课后习题解析 第四章 下
4.5-1a)$$a=2,b=4,f(n)=\Theta(1),\log_ba=\frac12\gt0$$符合情况1,$T(n)=\Theta(n^{1/2})$b)$$a=2,b=4,f(n)=\Theta(n^{1/2}),\log_ba=\frac12$$符合情况2,$T(n)=\Theta(n^{1/2}\lgn)$c)$$a=2,b=4,f(n)=\Theta(n),\log_ba=\f
weixin_30794499
·
2020-08-21 22:01
关于shell排序的一点理解
以前大学老师讲shell排序,当时鄙人我睡眼惺忪,意识模糊,听得一知半解,时隔多年,今日闲暇,拜读《
算法导论
》看到shell排序,勾起了我的编程欲望,当要一探究竟。
Shldreamfly
·
2020-08-21 19:49
数据结构与算法
Java
力扣学习路径
然后就是刷题+总结思考这个不能再简单了吧……《
算法导论
》呗……『算法第四版』挺适合入门的,跟着例子和习题做一遍多练就好了,这种东西也是熟能生巧。记得做题目要踏实,要搞明白里面的每个知识点,每一行代码。
不思考就变草履虫
·
2020-08-21 13:50
学习和生活规划
贪心算法极速入门
在《
算法导论
》中,讲到高级算法的时候,认为主要有三类,即:动态规划、贪心算法和平摊分析。这里通过一个经典小例子介绍一下贪心算法,可以让我们极速掌握贪心算法的思想。
天岸马是神马
·
2020-08-21 09:22
C++专区
算法学习--排序、图、回溯(最小冲突、遗传)、动态规划基础算法复习
主要参考《
算法导论
》(IntroductionofAlgorithm[ThirdEdition])和维基百科。目录文章目录算法学习算法入门内容目录排序图回溯动态规划小结其中排
V2beach
·
2020-08-21 08:04
C/C++
算法导论
之插入排序和归并排序
作为一名前线的码农不时地看一下算法和数据结构还是很有必要的,虽然《
算法导论
》这本书很难啃,但还是有必要啃一下的。
weixin_34384681
·
2020-08-21 06:32
算法导论
Java实现-随机化数组的两种方式(5.3章节)
packagelhz.algorithm.chapter.five;/***随机数组两种实现,《
算法导论
》第五章第三节*本文地址:http://mushiqianmeng.blog.51cto.com/
weixin_33805992
·
2020-08-21 06:42
计算机书籍下载
计算机书籍基础:《
算法导论
》该书是一本十分经典的计算机算法书籍,与高德纳(DonaldE.Knuth)的《计算机程序设计艺术》(TheArtOfComputerProgramming)相媲美。
戴桥冰
·
2020-08-21 04:01
书籍
算法导论
算法导论
说明:文章里面所有下标都从0开始,这里跟
算法导论
不同,
算法导论
从1开始插入排序1.从序列AnA_nAn中取出一元素AjA_jAj,j∈_j\inj∈[1,n],让AjA_jAj与[A0,Aj−1
封狼居胥_COU
·
2020-08-21 04:51
算法
《
算法导论
》第5章两种随机化数组方法Java实现
publicclassRandomArray{privatestaticint[]arrayOne=newint[]{1,2,3,4,5,6,7,8,9,10,11,12,13};privatestaticint[]arrayTwo=newint[]{1,2,3,4,5,6,7,8,9,10,11,12,13};publicstaticvoidmain(String[]args){//随机方式一,
locallucky
·
2020-08-21 04:43
算法导论
算法导论第5章
算法导论
第二章习题
算法导论
第二章习题笔记文章目录
算法导论
第二章习题笔记习题2.1-2:重写插入排序过程,使之按非升序(而不是非降序)排序。
hwl19951007
·
2020-08-21 03:03
算法导论
2018年的读书清单
《别做正常的傻瓜》《人人都是架构师》《领域驱动设计和模式实践》《JavaScript设计模式与开放实践》《JavaScript正则表达式迷你书》《大话设计模式》(第4遍阅读)《
算法导论
》缓存,数据库优化库表拆分
ange1008
·
2020-08-21 02:56
数据结构二三事之第一话:二叉堆(上)
堆,很essential的数据结构,可惜严老大那本书没有怎么重视的感觉,但《
算法导论
》上有。可能严老大有自己的考虑。
fairyroad
·
2020-08-20 23:14
算法
数据结构
算法
insert
delete
python
merge
也许是史上最不良心的低阶计算几何讲解和习题集??
.-2.可能会用到的资料:《计算几何——算法与应用》Mark·Overmars著邓俊辉译《计算几何导论》[美]F·P·普霍帕拉塔M·I·沙莫斯著——好像是一些没什么用的东西呢《
算法导论
——第3
weixin_30354675
·
2020-08-20 21:42
快速数论变换(NTT)
FFT的复数精度问题让我很不爽,
算法导论
上确实提了一下可以用数论的方法实现傅立叶变换,可是我一直不知道怎么搞,现在终于找到了质料以下内容转自ACdreamers(http://blog.csdn.net
zz_1215
·
2020-08-20 21:33
Fibonacci Heap实现
本算法是对<
算法导论
>相关章节伪代码的实现:先贴代码:#include#include#includeusingnamespacestd;classFibonacciHeap;classnode{friendclassFibonacciHeap
吴钩揽月
·
2020-08-20 18:00
算法码源
日经
类库
排序算法
创新工厂笔试题------数组反序个数
创新工场的这道求反序个数的题就是
算法导论
中的题目。其实是对归并排序做些修改,算法的复杂度是nlgn。程序代码如下://算法思想:并归排序数组S#include"stdafx.
feidewu
·
2020-08-20 16:15
算法导论算法
算法导论
第22章 22.1-3
#includeusingnamespacestd;typedefstructGnode{intindex;structGnode*next;}Gnode;intN,M;//N表示顶点,M表示边,有向图intmain(){scanf("%d%d",&N,&M);int**area=newint*[N];int**area2=newint*[N];inti,j;for(i=0;inext!=NULL
AndrewThompson
·
2020-08-20 13:21
算法导论(算法实现与习题解答)
算法导论
第22章 图的基本算法(一)
这篇博客讨论图的基本算法第一部分,包括两点内容:1、22.1节课后习题算法;2、广度优先搜索。对于深度优先搜索由于有递归形式以及非递归形式,还有对边类型和课后习题等等,内容较多,将重新开辟一章。本章算法中主要采取的图的表示图的表示比较简单,在此就不再讨论。我们约定一下,在本章中各种算法的图的相关表示,便于后续算法的讨论。约定如下:1、边节点结构;structedgeNode{//边节点size_t
bravepam
·
2020-08-20 13:18
算法和数据结构
算法导论
· 贪心策略 · kruskal算法
算法说明克鲁斯卡尔算法,利用边贪心,先对边排序,每次加入最小的边,使用并查集,判断边的端点是否已经在同一个集合中即确定要不要加入这条边源代码#include#include#includeusingnamespacestd;#definemaxn1000+1structedge{intu,v,cost;node(inta,intb,intc){u=a;v=b;cost=c;}};intn,m;//
YDDUONG
·
2020-08-20 13:57
Algorithm
《
算法导论
》第24章 单源最短路径
单元最短路径问题单源最短路径问题,试图解决从一个原点到图中其他所有点的最短路径问题。此问题的变体有单终点最短路径问题,单终点最短路径问题和每对顶点间最短路径问题。可以相应理解为一对多、多对一、一对一和多对多的映射关系。负权值边和负权回路某些权值可以是负的,这些边称为是负权值边。负权回路指的是构成整个回路各边的权值和为负。若不存在负权回路,只有负权值边,那么最短路径的定义依然正确;若存在负权回路,那
张小彬的代码人生
·
2020-08-20 13:57
算法
算法导论
第23章 KrusKal算法 Prim算法
终于写出来了,这个算法的准备工作也忒多了,先打好图的结构的基础,然后写一个实现不相交集合的数据结构,然后结合这两个结构完成这个算法。写了两天,终于把这些都解决了,今天终于出来成果了,好激动,好\(≧▽≦)/,忍不住欢呼雀跃,功夫都没白费,不枉费我这星期六日还在写,嘿嘿~~~~~图的最小生成树算法两种算法,一个是kruskal,一个是Prim1)Kruskal思路很简单,1、最开始时,每个结点都看成
xlf13872135090
·
2020-08-20 13:18
数据结构
算法导论
算法导论
第24章 单源最短路径
最短路径问题有最优子结构:最短路径的子路径也是最短路径。如果图中不包含从源节点s可以到达的权重为负值的环路,则对于所有的结点v,最短路径权重有精确定义。不存在最短路径的两种情况:1、从结点s到v的某条路径上存在权重为负值的环路,则δ(s,v)=-∞2、从结点s到v不存在路径,,则δ(s,v)=∞最短路径都是简单路径,且不存在环本章中有三个最短路径算法1、Bellman-Ford算法:解决的是一班情
xlf13872135090
·
2020-08-20 13:18
数据结构
算法导论
《
算法导论
》第23章——最小生成树
虽然写这个博客主要目的是为了给我自己做一个思路记忆录,但是如果你恰好点了进来,那么先对你说一声欢迎。我并不是什么大触,只是一个菜菜的学生,如果您发现了什么错误或者您对于某些地方有更好的意见,非常欢迎您的斧正!23.1最小生成树的形成在上图中,就是边cd。这两个定理看不懂没关系,不影响后面学习Kruskal算法与Prim算法。23.2Kruskal算法和Prim算法Kruskal算法我的理解:1
Claire_TJ
·
2020-08-20 13:04
算法导论
《
算法导论
》第22章——基本的图算法
虽然写这个博客主要目的是为了给我自己做一个思路记忆录,但是如果你恰好点了进来,那么先对你说一声欢迎。我并不是什么大触,只是一个菜菜的学生,如果您发现了什么错误或者您对于某些地方有更好的意见,非常欢迎您的斧正!图的搜索指的是系统化地跟随图中的边来访问图中的每个结点。22.1图的表示权重图:图中的每条边都带有一个相关的权重的图。该权重值通常由一个w:E→R的权重函数给出。例如,设G=(V,E)为一
Claire_TJ
·
2020-08-20 13:04
算法导论
算法导论
——DFS深度优先搜索
2019独角兽企业重金招聘Python工程师标准>>>packageorg.loda.graph;importorg.loda.structure.Stack;/****@ClassName:DFS*@Description:深度优先搜索(无向图)*@authorminjun*@date2015年5月24日上午4:02:24**/publicclassDFS{//原点privateints;//v
weixin_34216196
·
2020-08-20 13:07
算法导论
学习笔记(18)——单源最短路径(Dijkstra算法实现)
Dijkstra算法的基本思想是:设G=(V,E)是一个带权有向图,把图中顶点集合V分成两组,第一组为已求出最短路径的顶点集合(用S表示,初始时S中只有一个源点,以后每求得一条最短路径v,···vk,就将vk加入到集合S中,直到全部顶点都加入到S中,就结束了),第二组为其余未确定最短路径的顶点集合(有U表示),按最短路径长度的递增顺序依次把第二组的顶点加入到S中,在加入的过程中,总保持从源点v到S
xiangzhang321
·
2020-08-20 13:33
算法导论
算法导论
-第22章-基本的图算法-22.1 图的表示
一、综述图的表示方法通常有两种,即邻接表表示法和邻接矩阵表示法。这两种方法都可以表示有向图和无向图1.邻接表表示法(1)用邻接表表示无向图(2)用邻接表表示有向图(3)邻接表的优点及适用场合使用邻接表表示稀疏图比较紧凑2.邻接矩阵表示法(1)用邻接矩阵表示无向图(2)用邻接矩阵表示有向图(3)邻接矩阵的优点与适用场合用邻接矩阵表示稠密图可以很快地判别两个给定顶点是否存在邻接边二、代码1.邻接表表示
思翊
·
2020-08-20 13:11
数据结构和算法
算法导论
第二十四章:单源最短路径
在单源路径问题中常涉及到松弛技术(Relaxation),其原理如下:Bellman-Ford算法该算法主要是解决边的权重可能为负的情况。伪代码如下:EG:运行时间:O(VE)。Bellman-Ford算法的一个重要应用是差分约束(DifferenceandConstraints),其原理如下:对于一个差分约束Ax#includeusingnamespacestd;typedefcharvType
iffTimes
·
2020-08-20 13:41
Data
Structure
and
Algorithms
【
算法导论
】最小生成树之Kruskal法
在图论中,树是指无回路存在的连通图。一个连通图的生成树是指包含了所有顶点的树。如果把生成树的边的权值总和作为生成树的权,那么权值最小的生成树就称为最小生成树。因为最小生成树在实际中有很多应用,所以我们有必要了解怎样生成最小生成树。构造最小生成树的两种常用方法:Kruskal算法、Prim算法。本文介绍Kruskal算法,Prim算法在下篇文章中介绍。Kruskal算法是从另一条途径来求网络的的最小
nineheaded_bird
·
2020-08-20 13:56
C/C++
算法
算法之道
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
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
其他