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
数据结构与算法分析
《
数据结构与算法分析
:c语言描述》读书笔记
今天看完了第二章,写一下最近学习的感觉:1、效率是最重要的,书中对于mod运算时间的讨论,程序运行时间的快速下降,以及幂运算算法的讨论,都把效率放在了首要位置!2、我读这本书读的很通顺!写的可真好,可能跟自己的数学基础有关吧~读的很开心。3、关于递归,理解的不好,以后好好看。4、这一遍先看书,等第二遍用c全部实现。5、对分查找、欧几里得算法(其实就是辗转相除法)、幂运算。
lvchahp
·
2020-09-17 07:34
数据结构与算法分析
:C++描述(Mark Allen Weiss) 和 数据结构(刘大有)笔记
1.在计算机科学中,所有的对数都是以2为底的,除非另有声明。2.递归不是循环逻辑,虽然用一个函数本身来定义这个函数,但是并没有用一个函数实例本身来定义该特定实例。2.5矩阵模板classmatrix{public:matrix(introws,intcols):array(rows){for(inti=0;i&operator[](introw)const{returnarray[row];}ve
coolibin
·
2020-09-17 06:59
数据结构和算法
《
数据结构与算法分析
c++描述》读书笔记五——优先队列(堆)
引子:优先队列:顾名思义与普通的队列不同,其不同之处在于“优先”。出队的操作就不像普通的队列那样:先进先出,而是按某种性质选择一个最优项输出。例如:最大堆每次出队的元素是队列中最大的元素。优先队列的实现方式有链表和数组两种。使用链表方式:1)不需要队列按序排列,则插入操作总是O(1)时间;deleteMin(出队)操作每次都需要遍历整个链表找出最小元素需要O(N)时间;2)若保持队列按序排列,则插
u011085626
·
2020-09-17 03:18
数据结构与算法分析
《
数据结构与算法分析
c++描述》读书笔记四——伸展树、b+树
伸展树:对一个树任意一个节点的一次访问会使得该节点经过一系列的旋转移到根节点的位置。这样某次操作出现最坏情况访问时间为O(N),但接下来的一次访问时间将变成O(1);这样证明了虽然伸展树不排除某单次操作a花费时间是O(N),但是这次访问使得树的结构做了一系列的旋转,能减少下次操作a的时间,再引入”八二原则“(也就是说80%的人只会用到20%的数据),那么通过伸展树的多次旋转会使得常访问的节点都在根
u011085626
·
2020-09-17 03:18
数据结构与算法分析
《
数据结构与算法分析
c++描述》读书笔记三——AVL树
AVL树:对于每一个节点都要满足其左右子树的高度差不得大于1的二叉树(平衡条件)。当经过插入操作或者删除操作后破坏了树的平衡性时,要经过调整恢复平衡性后才认为一次插入或者删除操作完成。这样的调整总是可以通过一次简单的修正完成,称之为旋转。插入点a后,引起的不平衡情况有四种,下图分别给出了1~4的图形示意;:1)对a的左儿子的左子树进行了一次插入;2)对a的右儿子的右子树进行了一次插入;3)对a的左
u011085626
·
2020-09-17 03:17
数据结构与算法分析
《
数据结构与算法分析
c++描述》读书笔记二——二叉树
二叉树:对于每个节点X,节点的左子树所有项的值都小于X中的值,而右子树所有项的值都大于X中的值。下面给出二叉树的简单实现方式:成员函数如下:注:因为二叉树上述定义,每个节点中存放的值x要满足一个条件:x至少是可以被“<”比较的类型。对于上图中的插入、删除操作算法,有可能导致经过多次插入删除操作之后树变得不不平衡,对不同的节点操作时间差别很大,导致性能变差。所以有此引入改进算法:AVL树(一种自平衡
u011085626
·
2020-09-17 03:17
数据结构与算法分析
树的高度,深度,层数,度的辨析与解释
(网上的和算法题偏向说法二,如果有能找到更加权威的解答望不吝赐教)说法一:《
数据结构与算法分析
:C语言描述》第2版中的第4.1节中:说法二:来自:树的高度和深度的区别K节点在树的底层,是一个叶子节点,则一般定义为
Aledsan
·
2020-09-16 06:46
数据结构与算法
数据结构与算法:hash(散列表)
冲突分离链接法分离链接法缺点开放定址法线性探测法线性探测法特点平方探测法双散列再散列标准库中的散列表(常用集合)散列表性质散列表丰富的应用介绍概要code语言:java测试环境:win、java8参考书籍:《
数据结构与算法分析
maoyuanming0806
·
2020-09-15 22:54
数据结构与算法
个人书单
读完Java从入门到精通(第4版)C++PrimerPlus(第五版中文版)
数据结构与算法分析
—C语言描述(原书第2版)C#入门经典(第6版)Python基础教程(第2版修订版)计算机科学导论(原书第2
shlijiapeng
·
2020-09-15 03:00
随笔
书籍
python
数据结构与算法分析
-第一章
文章目录推荐两本口碑爆棚的Python算法&数据结构书。第一章:导论1.3计算机科学1.3.1编程1.3.2为何学习数据结构及抽象数据类型1.3.3为何学习算法1.4python基础1.4.1数据1.4.2输入与输出1.4.3控制结构1.4.4异常处理1.4.5定义函数1.4.6python面向对象编程:定义类推荐两本口碑爆棚的Python算法&数据结构书。1.算法图解2.ProblemSolvi
_he_dan_
·
2020-09-15 00:23
python数据结构与算法
算法
python
列表
字符串
数据结构与算法分析
_Java语言描述(第3版)源码
可直接下载链接:https://pan.baidu.com/s/18EsK0_Wc0ymxmVFbBKlNfA密码:hrci
不合格的合格程序员
·
2020-09-14 17:15
数据结构与算法分析
java语言描述
1、数据结构数据结构是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。一、数据结构的基本功能①、如何插入一条新的数据项②、如何寻找某一特定的数据项③、如何删除某一特定的数据项④、如何迭代的访问各个数据项,以便进行显示或其他操作二、常用的数据结构数组Array、栈S
金陵寄客
·
2020-09-14 15:27
数据结构与算法
【Java数据结构】算法运行时间简析
说明:本文主要内容摘自《
数据结构与算法分析
——Java语言描述》1.数学基础定义1.1如果存在正常数c和n使得当N>=n时T(N)=n时T(N)>=cg(N),则记为T(N)=Ω(g(N))=》表示增长率
天街酥雨
·
2020-09-14 13:44
数据结构与算法
《
数据结构与算法分析
——java语言描述(第二版)》中树实现的一点思考
书中P88页,是关于二叉查找树FindMax、FindMin方法的实现。在最后的注释中讲的是“findMax中队t的改变是安全的,因为我们只是用到引用的拷贝来进行工作。……t.right=t.right.right这样的语句将会产生一些变化。”FindMax中用的是t=t.right;这和t.right=t.right.right;还是有很大区别的。前者直接把这个引用指向了新的引用(即,换了一个对
擦肩的阳光
·
2020-09-14 12:33
Java
栈
本来想说,跟着看那个算法之路,但是发现
数据结构与算法分析
(C语言)并不是很好理解,其实它给的代码都是挺规范的,可能就是太规范了,所以不能直击要害,让人看着费解~~所以转向去听教程,浙大的数据结构教程还不错
懒猫一只拉阿拉蕾
·
2020-09-14 06:20
数据结构与算法
数据结构与算法分析
-C++描述 第8章 不相交集类(disjointSet)
背景介绍(background):等价关系(equivalencerelation):是满足下列三个性质的关系:1)自反性:对所有的,;(其中表示关系);2)对称性:当且仅当;3)传递性:若且则;举例:不具有等价性;电气连通性具有等价性。输入数据最初是个集合的类(collection),每个集合含有一个元素,初始的所有关系均为false(除自反性),每个元素都有一个不同的元素,从而,这使得这些元素
qq_37172182
·
2020-09-14 04:07
C++
数据结构与算法分析-C++描述
关于二叉堆(优先队列)的其他操作及其应用
【0】README0.1)本文总结于
数据结构与算法分析
;源代码均为原创,旨在了解到我们学习了优先队列后,还能干些什么东西出来,增加学习的interest;0.2)以下列出了关于二叉堆(优先队列)的其他有用的操作
PacosonSWJTU
·
2020-09-14 03:09
算法分析
算法是为为求解一个问题需要遵循的,被清楚地指定的简单指令的集合—《
数据结构与算法分析
》算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制
wenxiHuang
·
2020-09-14 03:13
算法
(2)入门:计算机是如何存储数据的
计算机是如何存储数据的一个程序员需要知道硬件与软件:计算机的运行原理(《编码》)最大的软件:操作系统(维基百科)自己写软件:数据结构&算法(《
数据结构与算法分析
》)多人写软件:软件工程(代码大全)前端为什么学编程基础操作系统运行于硬件之上浏览器运行于操作系统之上
wolverine54
·
2020-09-13 17:07
前端系统班笔记
《
数据结构与算法分析
python版》第十周编程作业
《
数据结构与算法分析
python版》第十周编程作业1、二叉查找树填空题目内容:给定一个二叉树结构,与一个整数列表,请将整数填充至二叉树对应节点内,使其成为一个二叉查找树;请输出该二叉查找树的层次遍历。
加油啊DuXY
·
2020-09-13 17:24
《
数据结构与算法分析
python版》第六周编程作业
《
数据结构与算法分析
python版》第六周编程作业1、铺瓷砖题目内容:给定一个长度为N的区域,及4种不同长度的瓷砖:灰瓷砖(长为1格)、红瓷砖(长为2格)、绿瓷砖(长为3格)与蓝瓷砖(长为4格),求所有不同的铺满整个区域的方法数
加油啊DuXY
·
2020-09-13 17:24
《
数据结构与算法分析
python版》第五周编程作业
《
数据结构与算法分析
python版》第五周编程作业1进制转换题目内容:给定一个M进制的数,请将其转换为N进制并输出输入格式:两行,第一行为空格分隔的两个数字,分别为10进制表示的M与N;其中M,N均满足
加油啊DuXY
·
2020-09-13 17:23
《
数据结构与算法分析
python版》第三周编程作业
@[TOC]慕课《
数据结构与算法分析
python版》第三周编程作业有效的括号题目要求脚本defisValid(s):dic={'(':')','[':']','{':'}'}stack=[]foriins
加油啊DuXY
·
2020-09-13 17:23
python
算法
《
数据结构与算法分析
python版》第八周编程作业
《
数据结构与算法分析
python版》第八周编程作业1、字符串中所有重排题目内容:给定一个字符串s与待查找字符串p,请给出使得s[i:i+len§]是p的一个字母重排的所有下标i输入格式:两行字符串,第一行为
加油啊DuXY
·
2020-09-13 17:52
生活杂感
最近技术方面在攻克数据结构与算法,主要阅读书籍《
数据结构与算法分析
》,《挑战程序设计》,《算法设计技巧与分析》。然而总是差强人意,细细思考,原因一是在于投入时间不够,二是自己会懈怠。
Stray_Cat_Founder
·
2020-09-13 16:18
life
数据结构与算法分析
-C++描述 第10章 算法设计技巧(动态规整之最优二叉搜索树)
算法设计技巧三:动态规整(dynamicprogramming)在上篇分治算法中看到,一个可以被数学上递归表示的问题也可以表示成递归算法,在许多情况下对朴素的穷举搜索得到显著的性能改进。由于编译器常常不能正确对待递归算法,结果产生低效的程序。将递归算法改写成非递归的方式,将子问题的答案系统地记录在一张表中,这种算法技巧称为动态规整。用表代替递归:使用递归算法实现斐波拉契程序算法,每次递归将耗费存储
qq_37172182
·
2020-09-13 16:12
C++
数据结构与算法分析-C++描述
数据结构与算法分析
-C++描述 第10章 算法设计技巧(分治算法之最近点对问题)
算法设计技巧二:分治算法(divideandconquer)算法设计的另一有效算法为分治算法,分治算法包括两步:1)分(divide):递归解决较小的问题(当然基本情况除外);2)治(conquer):从子问题中构建原问题的解;可以看到,在之前的归并排序、快速排序、以及无向图深度优先搜索、有向图深度优先搜索等方法中,有效的应用的分的思想,但并未实现治的部分,因此,不能算作分治算法。即正文中至少含有
qq_37172182
·
2020-09-13 16:12
C++
数据结构与算法分析-C++描述
《
数据结构与算法分析
python版》第七周编程作业
《
数据结构与算法分析
python版》第七周编程作业1、快速排序主元题目内容:著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元(中值),通过交换,把比主元小的元素放到它的左边
加油啊DuXY
·
2020-09-13 14:52
左式堆
数据结构与算法分析
——c语言描述第六章代码不难。反倒是理解merge挺难的。一个左式堆,它的子树也是左式堆。合并就是不断递归,直到找到一个空指针,然后合并。
qq789045
·
2020-09-13 12:04
数据结构与算法分析
-leetcode笔记
个人微信公众号:AI研习图书馆,欢迎关注~深度学习知识及资源分享,学习交流,共同进步~1.单词的压缩编码leetcode:820(1)题目给定一个单词列表,我们将这个列表编码成一个索引字符串S与一个索引列表A。例如,如果这个列表是[“time”,“me”,“bell”],我们就可以将其表示为S=“time#bell#”和indexes=[0,2,5]。对于每一个索引,我们可以通过从字符串S中索引的
算法之美DL
·
2020-09-13 03:28
数据结构与算法分析
算法
python
数据结构与算法分析
之树的概念总结
1.二叉查找树的大部分操作运行时间平均为O(logN)2.树是N个节点和N-1条边的集合,其中一个节点叫做根。存在N-1条边的结论由下面的事实得出:每条边都将某个节点连接到它的父亲,除根节点以外每个节点都有一个父亲3.没有儿子的节点称为树叶4.路径定义:从节点n1到nk的路径定义为节点n1,n2,...nk的一个序列,使得对于1<=i
快上车_来不及解释了
·
2020-09-13 02:04
数据结构与算法分析
数据结构与算法分析
——链表、栈、队列
链表声明structListNode{ElementTypeElement;ListNode*next;}voidinsert(ElementTypee,ListNode*List,ListNode*Position){if(List==NULL)return;ListNode*L;L=(structListNode*)malloc(sizeof(ListNode));L->Element=e;L
cq何
·
2020-09-13 01:58
数据结构与算法
数据结构与算法分析
树
由后缀式构造二叉表达树,前序遍历是前缀式,中序遍历是中缀式,后序遍历是后缀式#include#includeusingnamespacestd;templatestructBinaryNode{Objectdata;BinaryNode*left;BinaryNode*right;BinaryNode(constObject&x,BinaryNode*l,BinaryNode*r):data(x)
yuanyuanprince
·
2020-09-13 00:11
数据结构
算法
C++
数据结构--散列总结
前言最近学习数据结构,参考数据是《
数据结构与算法分析
》。现在总结自己的知识点散列散列也叫做哈希,根据英语单词hash英译过来。
锅巴程序员
·
2020-09-13 00:41
数据结构
算法
数据结构
哈希表
散列
散列探测
数据结构与算法分析
——树学习
树定义:一棵树由根(root)节点以及0到多个非空的子树组成,每颗子树的根都被来自root的一条有向边连接。节点间的关系:有子节点B、C的节点A被称为B、C的父亲,节点B、C称为A的儿子,节点C是节点B的兄弟节点。树叶:没有儿子的节点称为树叶。路径:从节点N1到节点Nk的路径定义为N1、N2、N3……Nk的一个序列,1其中对于任意i(1arr[++s->top]=T;elseT->Right=s-
cq何
·
2020-09-13 00:02
数据结构与算法
数据结构与算法学习
【
数据结构与算法分析
】树的知识点介绍
1树的的基础知识一棵树是一些节点的集合。这个集合可以是空集;若非空,则一棵树由称做根(root)的节点r以及0个或多个非空子树T1,T2,...,TkT_1,T_2,...,T_kT1,T2,...,Tk组成.这些子树中每一颗的根都被来自根r的一条有向的边所连接。树的基础概念:深度:任意节点nin_ini的深度为从根到nin_ini惟一路径的长。因此,根的深度为0。高度:nin_ini的高度是从n
HumanFlag
·
2020-09-13 00:04
数据结构与算法分析
C语言
PDF
数据结构
算法
【
数据结构与算法分析
】散列相关知识点
1散列的概念散列是一种用于以常数平均时间执行插入、删除和查找的技术。但是,那些需要元素间任何排序信息的操作将不会得到有效的支持。理想的散列表数据结构只不过是一个包含关键字的具体固定大小的数组。我们把表的大小记作TableSize,每个关键字被映射到从0到TableSize-1这个范围中的某个数,并且被放到适当的单元总。这个映射就叫做散列函数(hashfunction),理想情况下他应该运算简单并且
HumanFlag
·
2020-09-13 00:33
数据结构与算法分析
数据结构
算法
外部排序 简单算法
《
数据结构与算法分析
——C语言描述》第七章外部排序简单算法虽然是用了归并,涉及到文件,还是挺麻烦的。
qq789045
·
2020-09-12 22:30
数据结构与算法分析
-栈
栈ADT栈模型栈(stack)是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫做栈的顶(top)。对栈的基本操作有PushPushPush(进栈)和PopPopPop(出栈),前者相当于插入,后者则是删除最后插入的元素。最后插入的元素可以通过使用TopTopTop例程在执行PopPopPop之前进行考查。对空栈进行的PopPopPop或TopTopTop一般被认为是栈的ADT的错误。
帅到没朋友fx
·
2020-09-12 20:18
数据结构
栈
数据结构与算法分析
之栈
最近看了不少关于上海交大的关于
数据结构与算法分析
的视频,再次要感谢浩哥@zhangdaiscotthttp://blog.csdn.net/zhangdaiscott栈是个“先进后出的数据结构”,lastinfirstout
PrayFor丶Zx
·
2020-09-12 19:04
技术交流
数据结构与算法分析
之表、栈和队列(一)
1.前驱元,后继元对于除空表外的任何表,我们说后继;(或继,之后)并称(i1)。表中的第一个元素是,而最后一个元素是。我们将不定义的前驱元,也不定义的后继元。元素在表中的位置为i。为了简单起见,我们在讨论中将假设表中的元素是整数,但一般说来任意的复元素也是允许的。ADT(abstractdatatype)抽象数据类型2.链表概念链表由一系列不必在内存中相连的结构组成。每一个结构均含有表元素和指向包
飞猪飞飞
·
2020-09-12 19:03
数据结构与算法分析
[
数据结构与算法分析
]栈的应用-学习笔记
平时我们很少接触到一个栈的使用,但是今天看了如下三个例子后感触颇深,对于栈应用的情况理解更深了。分享如下:1、平衡符号平衡是个动词,意思就是用来平衡符号的,例如关于方法里{}左右大括号的匹配问题,在许多的语言里一旦发生缺少{}很难找到错误的位置,我们这样来平衡符号,当读到{[(时压入栈中如果遇到)]}时则弹出栈,但是如果弹出的栈和触发弹出栈的符号不匹配这就说明符号不平衡:2、后缀表达式在计算机里如
胖子程序员
·
2020-09-12 18:15
数据结构与算法分析
贪婪算法与调度问题
《
数据结构与算法分析
》中关于贪婪算法与调度问题的理解有四个作业,j1j2j3j4,每个完成时间为t1t2t3t4.如果顺序进行作乐,那么总的完成时间计算为:t=j1*t1+j2*(t1+t2)+j3*(
leochen_career
·
2020-09-12 16:20
算法
解析、查找数组中重复出现的元素(Java)
《
数据结构与算法分析
:解析、查找数组中重复出现的元素》问题描述:一个结构化数据,假设事先按照某种顺序排好序(比如升序)的一个数组中,无规则、重复出现若干次某个相同元素,形如有序数组data:data={
zhangphil
·
2020-09-12 14:52
数据结构与算法分析
纪念1024程序员节
一口气购置了6本书:《图解TCP/IP:第5版》《程序员代码面试指南:IT名企算法与数据结构题目最优解》左神《
数据结构与算法分析
:Java语言描述》(原书第3版)《算法》(第4版)【Sedgewick之巨著
谢凌宣
·
2020-09-12 08:13
[
数据结构与算法分析
:C语言描述读书笔记]树
1.树的优点与链表相比,其访问时间更快,大部分操作的时间小于O(logn)2.树的应用文件系统、算术运算3.基本概念儿子、父亲、兄弟、祖父、孙子、树叶、深度、高度、路径、祖先、真祖先、后裔、真后裔4.基本性质(1)具有N个节点的树有N-1个节点(2)树的深度等于它的最深的树叶的深度,等于这棵树的高5.树的实现由于儿子节点个数不确定(不一定是二叉树),故不能像二叉树那样实现,即父节点包含指向所有子节
weixin_34014555
·
2020-09-12 07:44
【
数据结构与算法分析
——C语言描述】第一章总结 引论
这一章主要复习了一些数学知识,像指数、对数、模运算、级数公式;还有2种证明方法,归纳假设法和反证法。所幸以前学过,重新拾捡起来也比较轻松。简要地复习了递归,提出了编写递归例程的四条基本法则:基准情形。必须总有些基准情形。它无需递归就能解出。不断推进。对于那些需要递归求解的情形,每一次递归调用都必须要使求解状况朝接近基准情形的方向推进。设计法则。假设所有的递归调用都能运行。合成效益法则。在求解一个问
weixin_30426957
·
2020-09-12 07:29
《数据结构》第1章
数据结构与算法分析
概述(C语言描述)
1.1数据结构概述1.1.1数据结构的含义数据结构和算法是程序设计最重要的两个内容。简单的说,数据结构是数据的组织,存储和运算的总和。它是信息的一种组织方式,是以数据按某种组织关系起来的一批数据,其目的是为了提高算法的效率,然后用一定的存储方式存储到计算机中,并且它通常与一组算法的集合相对应,通过这组算法集合可以对数据结构中的数据进行某种操作。在计算机处理的大量数据中,它们都是相互关联,彼此联系的
Bruceoxl
·
2020-09-12 07:36
数据结构
概述
《
数据结构与算法分析
c++描述》读书笔记一——表
学习数据结构与算法的参考书是《
数据结构与算法分析
c++描述》一书。首先看的是最基本的ADT(抽象数据结构)表、栈、队列。1、表:是一种有限且有序的序列。
u011085626
·
2020-09-12 07:11
学习笔记
《
数据结构与算法分析
--c语言描述》之第一章:引论
学习《数据结构》与《算法设计与分析》这两门课程已经有一段时间了。但在设计编写代码时,还是不能做到游刃有余。怎么说呢?平时在编写代码的时候不会去考虑很多。诸如:是否要用哪个数据结构?是否可以用哪个算法?之类的问题很少会在脑海浮现。原因是:当想到用哪个数据结构或者哪个算法时,往往发现实现起来很麻烦,很难,总得花不少时间去重翻课本,对自己的要求就是写出能工作的程序就行了。久而久之也就对这样的想法敬而远之
chzhs
·
2020-09-12 05:04
数据结构
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他