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
《数据结构与算法之美》
数据结构与算法之美
4--数组:为什么很多编程语言中数组都从0开始编号?
数据结构与算法1什么是数组?数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。1.1线性表线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。线性表.jpg非线性表,比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是简单的前后关系。非线性表.jpg1.2连续
凯玲之恋
·
2020-03-24 21:40
JavaScript
数据结构与算法之美
- 归并排序、快速排序、希尔排序、堆排序
JavaScript
数据结构与算法之美
1.前言算法为王。想学好前端,先练好内功,只有内功深厚者,前端之路才会走得更远。
是夜尽天明呀
·
2020-03-21 09:29
数据结构与算法之美
——散列表
1.1散列思想将数据以散列函数的方式(键值对)存储1.2散列函数形如hash(key)的键值对函数叫散列函数,hash(key)是值,key是键。1.3散列函数设计的基本要求散列函数计算值应该是非负整数如果散列函数的键相等,则函数一定相等如果键不相等,则值也一定不相等但是在真实的情况下第三个条件很难满足,这种不满足的情况叫它散列冲突。1.4散列冲突的解决办法散列冲突有两类解决办法:开放寻址法、链表
远方有你,伴余生
·
2020-03-14 03:00
04 | 复杂度分析(下):浅析最好、最坏、平均、均摊时间复杂度
本篇所涉及的提问,正文的知识点,全都来自于王争的《
数据结构与算法之美
》,当然,我并不会全文照搬过来,毕竟这是付费的课程,应该会涉及到侵权之类的问题。
_Rice_
·
2020-03-10 04:39
冒泡排序,插入排序,选择排序三种算法的优劣
最近听了王争老师的
数据结构与算法之美
,大有获益,特写此博客与大家分享.排序算法太多了,但大体可以归结于三类,冒泡排序,插入排序,选择排序,那么如果分析一个算法呢,评价一个算法的优劣呢,可以从三方面入手,
我是码神
·
2020-03-05 03:39
「笔记」
数据结构与算法之美
- 基础篇(一)
数组数组(Array)是一种线性表数据结构,它用一组连续的内存空间,来存储一组具有相同类型的数据线性表线性表就是数据排成像一条线一样的结构,每个线性表上的数据最多只有前和后两个方向非线性表在非线性表中,数据之间并不是简单的前后关系(比如二叉树、堆、图等连续的内存空间和相同类型的数据带来的一个堪称“杀手锏”的特性:“随机访问”数组支持随机访问,根据下标随机访问的时间复杂度为O(1)(数组适合查找,查
D.Chuan
·
2020-03-01 10:47
「笔记」数据结构与算法之美
数组
链表
栈
队列
递归
Python|算法|快速排序|如何在O(n)查找第K大元素
以下是本人学习极客时间的专栏《
数据结构与算法之美
》后,自己动手敲代码实现,并写下当时的思考,希望对你也有帮助。
somenzz
·
2020-03-01 05:18
Python-排序-归并排序中如何用哨兵来追求极致的性能?
以下是本人学习极客时间的专栏《
数据结构与算法之美
》后,自己动手敲代码实现,并写下当时的思考,希望对你也有帮助。
somenzz
·
2020-02-24 05:33
数据结构与算法之美
笔记——链表(上)
摘要:链表和数组一样,也是基础常用的数据结构之一,由于采取了与数组不同的数据存储方式,导致链表的随机访问、插入和删除操作时间复杂度都为,链表有多种类型,如单链表、循环链表和双向链表等。链表的特性链表有许多类型,接下来先以最简单的单链表进行分析。要了解链表的特性先得了解链表是如何存储的,链表每个存储单元被称为「结点」,结点不仅会存储数据本身,还会存储一个指向下一结点的指针,这个指针称为「后继指针」,
Cloneable
·
2020-02-23 19:46
数据结构与算法之美
(零):学前准备
笔者作为一名非科班出身的程序员,想系统地补充“数据结构与算法”这一块知识,入了极客时间的专栏《
数据结构与算法之美
》,希望能以笔记的形式总结、分享所学,更以督促学习。
六号先生117
·
2020-02-21 01:16
线性排序:如何根据年龄给100万用户的数据排序?
学习《
数据结构与算法之美
》,极客时间专栏笔记...............................................................................
坚持,每天进步一点点
·
2020-02-18 11:00
数据结构与算法之美
笔记——散列表(上)
摘要:「散列表」(HashTable)或「Hash表」是基于数组扩展的数据结构,能够将复杂信息通过「Hash算法」生成「Hash值」,以对应数组下标,完成快速随机访问数据的功能。"我"从哪里来我们已经知道随机访问数组元素时间复杂度只有,效率极高,当我们想利用数组的这个特性时就需要将元素下标与存储信息对应。例如,一个商店只有四件商品,依次编号0至3,这样就可以将四件商品信息按照编号对应下标的方式存储
Cloneable
·
2020-02-13 11:09
《
数据结构与算法之美
》- 栈
栈,在这里说的是一种数据结构。你还可能知道的栈提到“栈”,做Java的同学还会想起Java内存模型中的“栈”,与之紧密关联的还有一个名词——堆,但是这里,此栈非彼栈。引用《深入理解Java虚拟机》中有关栈的介绍经常有人把Java内存区分为堆内存(Heap)和栈内存(Stack),这种分法比较粗糙,Java内存区域的划分实际上远比这复杂。这种划分方式的流行只能说明大多数程序员最关注的、与对象内存分配
Jackie_Zheng
·
2020-02-13 04:25
Python-排序-选择排序-优化
以下是本人学习极客时间的专栏《
数据结构与算法之美
》后,自己动手敲代码实现,并写下当时的思考,希望对你也有帮助。
somenzz
·
2020-02-11 19:25
数据结构与算法之美
笔记——队列
摘要:「队列(Queue)」也是一种受限的线性表数据结构,有先入先出的特点,可以使用数组或链表实现,也有很多的真实应用场景。队列队列也是线性表数据结构的一种,不过操作受到一定的限制,只能从一端插入数据,另一端取出数据,这样受限的操作也就使队列有了数据先入先出的特点,插入数据和取出数据的操作分别称为「入队」和「出队」。队列的实现可以用数组和链表两种方式实现,用数组实现的称为「顺序队列」,使用链表方式
Cloneable
·
2020-02-09 17:06
Python 排序-插入排序-优化
以下是本人学习极客时间的专栏《
数据结构与算法之美
》后,自己动手敲代码实现,并写下当时的思考,希望对你也有帮助。
somenzz
·
2020-02-07 06:47
数据结构与算法之美
(二):数组
本章内容源于笔者对极客时间《
数据结构与算法之美
》以下章节的学习笔记:数组:为什么很多编程语言中数组都从0开始编号?开篇思考题:为什么数组要从0开始编号,而不是从1开始呢?
六号先生117
·
2020-02-06 21:49
JavaScript
数据结构与算法之美
- 冒泡排序、插入排序、选择排序
JavaScript
数据结构与算法之美
全栈修炼1.前言算法为王。想学好前端,先练好内功,只有内功深厚者,前端之路才会走得更远。
是夜尽天明呀
·
2020-02-06 09:05
数据结构与算法之美
:栈
什么是栈符合后进先出,先进后出的数据结构成为栈。栈在表达式计算,括号匹配,浏览器的“前进”“后退”等场景下都能起到很好的应用效果。如何写一个栈栈可以用过数据或者链表来实现,用数组实现的栈,我们叫作顺序栈,用链表实现的栈,我们叫作链式栈。如下是通过数据实现栈的java写法://基于数组实现的顺序栈publicclassArrayStack{privateString[]items;//数组priva
AffyFei
·
2020-02-06 01:15
使用C语言实现堆(heap)
极客时间的「
数据结构与算法之美
」的学习笔记,图片来源于「28|堆和堆排序:为什么说堆排序没有快速排序快?」
徐洲更hoptop
·
2020-02-05 06:08
【算法和数据结构基础知识】队列相关基础
一些知识以下内容来自极客时间-王争-
数据结构与算法之美
一、什么是队列?1.先进者先出,这就是典型的“队列”结构。
安东尼_Anthony
·
2020-02-02 17:57
数据结构与算法之美
学习笔记:03 ~ 05
本文是极客时间推出的
数据结构与算法之美
课程的学习笔记复杂度分析:1.数据结构和算法解决的是“如何让计算机更快时间、更省空间的解决问题”2.因此需从执行时间和占用空间两个维度来评估数据结构和算法的性能3.
EnigmaJJ
·
2020-01-08 04:21
数据结构与算法 | 栈的实现及应用
声明:本篇为极客时间《
数据结构与算法之美
》专栏《栈》这一部分的学习笔记,部分内容摘抄自专栏文章。栈定义线性表中的一
wangwei_hz
·
2020-01-05 18:01
八皇后8皇后,探讨最效率的算法。
数据结构与算法之美
|极客时间,里边的课程,关于八皇后的问题。我喜欢先说结果,然后带着疑问去学习。结果:我感觉我的效率比老师的快百分之50,也许老师的只是想让我们易读懂。
菜鸡徐思
·
2020-01-03 09:00
数据结构与算法之美
复杂度分析上
[
数据结构与算法之美
:如何分析、统计算法的执行效率和资源消耗?(03)]image一、如何分析、统计算法的执行效率和资源消耗?
luke_
·
2020-01-03 09:41
数据结构与算法之美
——复杂度分析(下):浅析最好、最坏、平均、均摊时间复杂度
[TOC]说明今天讲解四个复杂度分析方面的知识点:最好情况时间复杂度最坏情况时间复杂度平均情况时间复杂度均摊时间复杂度最好、最坏情况时间复杂度首先上代码进行分析//n表示数组array的长度intfind(int[]array,intn,intx){inti=0;intpos=-1;for(;i=len){//数组空间不够了//重新申请一个2倍大小的数组空间intnew_array[]=newin
乔巴会飞
·
2019-12-31 10:06
《
数据结构与算法之美
》06~10笔记
Demo,写的博客都放在了这个仓库里iOS-Engineer-Interview欢迎star其中的博客在,CSDN都有发布博客中提到的相关的代码Demo可以在仓库里相应的文件夹里找到前言该系列为学习《
数据结构与算法之美
太阳骑士索拉尔
·
2019-12-28 17:17
数据结构与算法之美
5--链表(上):如何实现LRU缓存淘汰算法?
数据结构与算法1缓存缓存是一种提高数据读取性能的技术,在硬件设计、软件开发中都有着非常广泛的应用,比如常见的CPU缓存、数据库缓存、浏览器缓存等等。缓存的大小有限,当缓存被用满时,哪些数据应该被清理出去,哪些数据应该被保留?这就需要缓存淘汰策略来决定。常见的策略有三种:先进先出策略FIFO(FirstIn,FirstOut)最少使用策略LFU(LeastFrequentlyUsed)最近最少使用策
凯玲之恋
·
2019-12-25 06:18
《
数据结构与算法之美
》之数组与链表
继续开始关于极客时间《
数据结构与算法之美
》课程的总结,本次是来自基础篇的数组与链表部分,对应的课程5-7部分。
柳年思水
·
2019-12-25 00:37
数据结构与算法之美
(五)链表(上)
06|链表(上):如何实现LRU缓存淘汰算法?什么是链表?为了充分利用存储空间和提高运行效率,线性表可以采用另一种存储结构---链接式存储结构。线性表的链接式存储结构简称为链表(LinkList)。经典的链表应用场景---LRU缓存淘汰算法缓存是一种提高数据读取性能的技术,在硬件设计、软件开发中都有着非常广泛的应用,比如常见的CPU缓存、数据库缓存、浏览器缓存等等。缓存的大小有限,当缓存被占满时,
sssummerr
·
2019-12-24 16:38
深度优先搜索
本文为王争老师在『极客时间』中的课程《
数据结构与算法之美
》的学习笔记,想要学习原文的同学购买相关课程学习。如有侵权请联系作者删除。
jacob2359
·
2019-12-19 10:06
数据结构与算法之美
笔记——二叉查找树
摘要:二叉查找树(BinarySearchTree)是一种用于快速查找、插入和删除数据的二叉树结构,虽然二叉查找树的平衡性无法保持时会存在退化为链表,时间复杂度增高的情况,但在某些方面二叉查找树还是保持一定的优势。二叉树进化——二叉查找树二叉查找树与二叉树在「二叉」两个字上讲述了其血缘关系,两者在外形上并没有本质的区别,但是二叉查找树对具体数据的存储位置进行了处理,形成了自己的规则。我们都知道,一
Cloneable
·
2019-12-19 02:57
2019-10-27文章阅读
来源:王争的
数据结构与算法之美
时间复杂度为O(logn)二分查找应用场景的要求:数组经过排序的数组内存中数组是连续的空间,所以待排序的数量不要太大超过了内存二分查找(下):如何快速定位IP对应的省份地址
草珊瑚_6557
·
2019-12-18 20:44
数据结构与算法之美
3--复杂度分析(下):浅析最好、最坏、平均、均摊时间复杂度
数据结构与算法1四个复杂度分析方面:最好情况时间复杂度(bestcasetimecomplexity)最坏情况时间复杂度(worstcasetimecomplexity)平均情况时间复杂度(averagecasetimecomplexity)均摊时间复杂度(amortizedtimecomplexity)。2最好、最坏情况时间复杂度2.1示例一//n表示数组array的长度intfind(int[
凯玲之恋
·
2019-12-18 19:17
《
数据结构与算法之美
》21~25笔记
Demo,写的博客都放在了这个仓库里iOS-Engineer-Interview欢迎star其中的博客在,CSDN都有发布博客中提到的相关的代码Demo可以在仓库里相应的文件夹里找到前言该系列为学习《
数据结构与算法之美
太阳骑士索拉尔
·
2019-12-08 11:42
《
数据结构与算法之美
》11~15笔记
Demo,写的博客都放在了这个仓库里iOS-Engineer-Interview欢迎star其中的博客在,CSDN都有发布博客中提到的相关的代码Demo可以在仓库里相应的文件夹里找到前言该系列为学习《
数据结构与算法之美
太阳骑士索拉尔
·
2019-12-07 05:12
数据结构与算法之美
8--栈:如何实现浏览器的前进和后退功能?
数据结构与算法当你依次访问完一串页面a-b-c之后,点击浏览器的后退按钮,就可以查看之前浏览过的页面b和a。当你后退到页面a,点击前进按钮,就可以重新查看页面b和c。但是,如果你后退到页面b后,点击了新的页面d,那就无法再通过前进、后退功能查看页面c了。1如何理解“栈”?关于“栈”,我有一个非常贴切的例子,就是一摞叠在一起的盘子。我们平时放盘子的时候,都是从下往上一个一个放;取的时候,我们也是从上
凯玲之恋
·
2019-12-07 04:29
《
数据结构与算法之美
》复杂度分析(上):如何分析、统计算法的执行效率和资源消耗 (读后感)
什么是复杂度分析?数据结构和算法解决的是如何让计算机更快、更省空间的执行。因此需要从两个方面评估数据结构和算法的优越性。分别用时间复杂度和空间复杂度两个概念来描述性能问题,二者统称为复杂度。复杂度描述的是算法的执行时间或者占用空间的大小与数据规模增长关系。为什么需要复杂度分析?和性能测试相比,复杂度分析有不依赖执行环境、成本低、效率高、易操作、指导性强。掌握复杂度分析,将能编写出性能更优的代码,有
kenuo
·
2019-12-01 21:29
《
数据结构与算法之美
》16~20笔记
Demo,写的博客都放在了这个仓库里iOS-Engineer-Interview欢迎star其中的博客在,CSDN都有发布博客中提到的相关的代码Demo可以在仓库里相应的文件夹里找到前言该系列为学习《
数据结构与算法之美
太阳骑士索拉尔
·
2019-12-01 19:04
数据结构与算法之美
》如何抓住重点,系统高效地学习数据结构与算法 (读后感)
什么是数据结构?储存一组数据的方法,数据结构是为算法服务的,算法要作用在特定的数据结构之上.数据结构和算法相辅相成.什么是算法?广义上讲就是"操作一组数据的方法",列如图书馆有很多书,我们怎么才能更快的查询到书籍呢?可以先根据书籍类别的编号,是人文,还是科学、计算机,来定位书架,然后再依次查找。笼统地说,这些查找方法都是算法。初学数据结构和算法知识点思维导图初学数据结构和算法知识点思维导图20个常
kenuo
·
2019-11-30 15:40
《
数据结构与算法之美
》为什么要学习数据结构和算法 (读后感)
一、数据结构和算法是什么数据结构是指一组数据的存储结构算法就是操作数据的方法数据结构和算法是相辅相成的,数据结构是为算法服务的,而算法要作用在特定的数据结构之上二、学习的重点在什么地方数据结构和算法解决的是如何更省、更快地存储和处理数据的问题,因此,我们就需要一个考量效率和资源消耗的方法,这就是复杂度分析方法。在学习数据结构和算法的过程中,要学习它的「来历」、「自身的特点」、「适合解决的问题」以及
kenuo
·
2019-11-29 06:53
算法的复杂度分析
本文是对极客时间《
数据结构与算法之美
》03-04节课关于算法复杂度分析的小结。
柳年思水
·
2019-11-28 08:47
数据结构与算法
数据结构与算法之美
数据结构与算法之美
1--如何学
数据结构与算法之美
2--复杂度分析(上)
数据结构与算法之美
3--复杂度分析(下):浅析最好、最坏、平均、均摊时间复杂度
数据结构与算法之美
4--数组:为什么很多编程语言中数组都从
凯玲之恋
·
2019-11-06 06:02
50 万字 2 万行代码,前Google工程师带你彻底掌握设计模式
《
数据结构与算法之美
》专栏的作者,前Google工程师,极客时间专栏订阅量超过6.6万的存在。这次回归他为极客时间用户带来了更加重量级的作品:设计模式之美。
MacTalk
·
2019-11-04 00:00
数据结构与算法之美
-主定理方法(master theorem)和递归树
1.MergeSort-归并排序核心:归并排序是采用分治法的一个非常典型的应用。归并排序的思想就是先递归分解数组,再合并数组。将数组分解最小之后,然后合并两个有序数组,基本思路是比较两个数组的最前面的数,谁小就先取谁,取后相应指针就往后移一位。然后再比较,直至一个数组为空,最后把另一个数组的剩余部分复制过来即可。归并排序的分析Python代码实现"""归并排序是采用分治法的一个非常典型的应用。归并
魏鹏飞
·
2019-10-28 10:43
数据结构与算法(四):栈
数据结构与算法(四):栈最近开始学习王争老师的《
数据结构与算法之美
》,通过总结再加上自己的思考的形式记录这门课程,文章主要作为学习历程的记录。
lianghe77
·
2019-10-21 22:39
数据结构
栈
数据结构与算法
02数据结构与算法复杂度分析上
数据结构与算法之美
专栏笔记1.为什么要学习数据结构和算法数据结构和算法本身解决的是“快”和“省”的问题,让代码运行的更快,让代码存储空间更省2.为什么要关注执行效率(算法代码执行时间)执行效率是算法一个非常重要的考量指标
ssas_
·
2019-10-21 00:28
数据结构与算法之美
数据结构与算法之美
-第一天—如何系统高效的学习数据结构和算法什么是数据结构?什么是算法?我们为什么要学习数据结构以及算法?学习它们对我们有什么好处?
php大神进阶
·
2019-10-19 23:00
数据结构与算法(三):链表
数据结构与算法(三):链表最近开始学习王争老师的《
数据结构与算法之美
》,通过总结再加上自己的思考的形式记录这门课程,文章主要作为学习历程的记录。
lianghe77
·
2019-10-19 10:15
数据结构与算法
数据结构与算法之美
---00 开篇
时间安排(2019.10.15-2019.12.28),内容安排如下:1、《
数据结构与算法之美
》-王争(极客时间的课程),每讲最多20分钟,73讲。(计划:每天20分钟左右,隔天交流。
狼牙雪豹
·
2019-10-18 10:06
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
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
其他