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
《数据结构与算法之美》
【大福利】极客时间专栏返现二维码大汇总
一、专栏01-
数据结构与算法之美
02-深入剖析Kubernetes03-从
weixin_33724059
·
2020-08-20 08:45
数据结构与算法之美
--知识点四:栈、队列
08|栈:如何实现浏览器的前进和后退功能?用数组实现的栈,叫做顺序栈;用链表实现的栈,叫做链式栈函数调用栈?表达式求值(保存操作数的栈、保存运算符的栈,操作符优先级比较),括号匹配内存中的堆栈和数据结构堆栈不是一个概念,可以说内存中的堆栈是真实存在的物理区,数据结构中的堆栈是抽象的数据存储结构。内存空间在逻辑上分为三部分:代码区、静态数据区和动态数据区,动态数据区又分为栈区和堆区。代码区:存储方法
随心而至
·
2020-08-17 15:50
Algorithm
数据结构与算法之美
--知识点六:排序
目录11|排序(上):为什么插入排序比冒泡排序更受欢迎?12|排序(下):如何用快排思想在O(n)内查找第K大元素?13|线性排序:如何根据年龄给100万用户数据排序?14|排序优化:如何实现一个通用的、高性能的排序函数?11|排序(上):为什么插入排序比冒泡排序更受欢迎?冒泡、插入、选择O(n^2)快速、归并O(nlogn)计数、基数、桶O(n)排序算法的执行效率最好情况、最坏情况、平均情况时间
随心而至
·
2020-08-17 15:50
Algorithm
数据结构与算法之美
--知识点五:递归
10|递归:如何用三行代码找到“最终推荐人”?基本上,所有的递归问题都可以用递推公式来表示一个问题的解可以分解为几个子问题的解这个问题与分解之后的子问题,除了数据规模不同,求解思路完全一样存在递归终止条件写递归代码的关键就是找到如何将大问题分解为小问题的规律,并且基于此写出递推公式,然后再推敲终止条件,最后将递推公式和终止条件翻译成代码堆栈溢出,限制递归深度为了避免重复计算,可以通过一个数据结构(
随心而至
·
2020-08-17 15:50
Algorithm
数据结构与算法之美
(个人笔记)- 算法性能分析_复杂度分析(下)
本人在购买极客学院王争老师的《
数据结构与算法之美
》后,觉得里面的内容还不错,适合新手入门,故将自己的学习笔记整理了下,做个记录,供学习使用,另里面存在个人理解,难保会有差错,欢迎大家在评论区讨论,侵删。
小啊小木头
·
2020-08-17 13:50
数据结构与算法之美
数据结构与算法之美
(个人笔记)- 算法性能分析_复杂度分析(上)
本人在购买极客学院王争老师的《
数据结构与算法之美
》后,觉得里面的内容还不错,适合新手入门,故将自己的学习笔记整理了下,做个记录,供学习使用,另里面存在个人理解,难保会有差错,欢迎大家在评论区讨论,侵删。
小啊小木头
·
2020-08-17 13:19
数据结构与算法之美
链表(上):如何实现LRU缓存淘汰算法?
本文是学习算法的笔记,《
数据结构与算法之美
》,极客时间的课程链表(Linkedlist)缓存技术是一种提高数据读取性能的技术,应用广泛。缓存的大小有限,当缓存被用满的时候,哪些数据应该被保留?
every__day
·
2020-08-17 08:28
算法与数据结构
冒泡排序,插入排序,选择排序三种算法的优劣
https://www.jianshu.com/p/9f724c880124最近听了王争老师的
数据结构与算法之美
,大有获益,特写此博客与大家分享.排序算法太多了,但大体可以归结于三类,冒泡排序,插入排序
Tiger-Li
·
2020-08-16 06:08
算法基础
数据结构——贪心算法
最近开始学习王争老师的《
数据结构与算法之美
》,通过总结再加上自己的思考的形式记录这门课程,文章主要作为学习历程的记录。
lianghe77
·
2020-08-15 23:14
数据结构与算法
数据结构与算法之美
-入门篇-05-07-数组以及链表
数据结构与算法之美
-入门篇-05-07-数组以及链表数组如何实现随机访问?低效的“插入”和“删除”插入删除多个一起删除以提高效率警惕数组的访问越界问题容器能否完全替代数组?为什么序号从0开始?
winzjqwin
·
2020-08-15 17:52
数据结构与算法
11 排序1:为什么插入排序比冒泡排序更受欢迎?
本系列是学习
数据结构与算法之美
11排序1:为什么插入排序比冒泡排序更受欢迎?
QIANQIANCHEN0
·
2020-08-14 06:06
数据结构与算法之美
跳表的设计思路,值得每一个程序员学习
学习《
数据结构与算法之美
》中的第17节[为什么redis一定要用跳表来实现有序集合]后,觉得很有价值,以自己的理解整理出下文,分享给爱学习的你,希望你可以看懂。
郑征
·
2020-08-13 18:28
Python
算法
剑指 Offer 51. 数组中的逆序对
nums.size())return0;intnum=0;for(inti=0;inums[j])++num;}}returnnum;}};归并排序参考:
数据结构与算法之美
阿祭儿
·
2020-08-12 17:44
leetcode
leetcode
算法与数据结构(一) -- 冒泡,插入,希尔,选择,归并,快速,堆排序
作者:opLW参考:王争老师的《
数据结构与算法之美
》程序员小灰的文章厘米姑娘的算法面试总结目录1.概览2.冒泡排序3.插入排序4.希尔排序(插入排序升级版)5.选择排序6.归并排序7.快速排序8.堆排序
op小白
·
2020-08-12 16:47
算法与数据结构
【
数据结构与算法之美
】树,二叉树,二叉查找树,平衡二叉查找树(红黑树)
树极客时间王争的《
数据结构与算法之美
》树相关课程笔记节点根节点,父节点,子节点,兄弟节点,叶子节点/叶节点二叉树每个节点最多两个子节点:左子节点,右子节点满二叉树完全二叉树满二叉树就是一种完全二叉树二叉树的存储分两种
hugeo-coala
·
2020-08-11 23:30
基础
数据结构与算法之美
--1.时间复杂度分析
时间复杂度分析为什么要进行时间复杂度的分析大O复杂度表示法如何分析一段代码的时间复杂度?几种常见时间复杂度实例分析。空间复杂度最好、最坏时间复杂度平均时间复杂度均摊时间复杂度为什么要进行时间复杂度的分析如果我们直接将代码跑一遍,通过统计,监控,就能够得到算法执行的时间和占有的内存,为什么还需要进行时间、空间复杂度的分析?因为上述评估算法的方式称为事后统计法,具有很大局限性。测试结果非常依赖测试环境
凭栏听雨客
·
2020-08-10 20:27
数据结构与算法之美
数据结构——二分查找(python实现)
最近开始学习王争老师的《
数据结构与算法之美
》,通过总结再加上自己的思考的形式记录这门课程,文章主要作为学习历程的记录。
lianghe77
·
2020-08-10 17:28
数据结构与算法
哈希算法(下):哈希算法在分布式系统中有哪些应用?
------本文是学习算法的笔记,《
数据结构与算法之美
》,极客时间的课程------这一节来说说哈希算法的另外三种应用:负载均衡、数据分片、分布式存储。其实这三个应用都跟分布式系统有关。
every__day
·
2020-08-10 16:47
算法与数据结构
《
数据结构与算法之美
》笔记——队列,数组实现顺序队列,数组实现循环队列,链式队列
一、什么是队列?1.先进者先出,这就是典型的「队列」结构。2.支持两个操作:入队enqueue(),放一个数据到队尾;出队dequeue(),从队头取一个元素。3.所以,和栈一样,队列也是一种操作受限的线性表。二、如何实现队列?1.队列APIpublicinterfaceQueue{publicvoidenqueue(Titem);//入队publicTdequeue();//出队publicin
shiinerise
·
2020-08-10 14:30
leetcode
十分钟弄懂:
数据结构与算法之美
- 时间和空间复杂度
复杂度分析是整个算法学习的精髓,只要掌握了它,数据结构和算法的内容基本上就掌握了一半了。1.什么是复杂度分析?数据结构和算法解决是“如何让计算机更快时间、更省空间的解决问题”。因此需从执行时间和占用空间两个维度来评估数据结构和算法的性能。分别用时间复杂度和空间复杂度两个概念来描述性能问题,二者统称为复杂度。复杂度描述的是算法执行时间(或占用空间)与数据规模的增长关系。2.为什么要进行复杂度分析?和
weixin_33941350
·
2020-08-10 07:34
2020年个人计划
1.学习1.1专业知识学习清单Kubernetes权威指南
数据结构与算法之美
——目前学到第15节深入剖析Kubernetes设计模式之美CNCF×Alibaba云原生技术公开课——目前学到第20节玩转Git
萝卜头LJW
·
2020-08-10 01:34
我的人生
计算机基础学习笔记 | 数据结构基础
linkedlist)查找节点更新节点插入节点删除节点数组和链表的对比逻辑结构栈队列散列表(哈希表)写操作写操作扩容应用树二叉树应用二叉树的遍历二叉堆二叉堆的应用:优先队列树知识点小节学习资料极客时间:
数据结构与算法之美
疯狂的皮卡
·
2020-08-09 01:57
计算机基础学习
吴恩达-《深度学习DeepLearning》汇总目录
从2019年2月底开始学习《
数据结构与算法之美
》,王争老师的课程非常好,到2019年8月底已经学完一遍,后面还要多次复习巩固以及OJ刷题。
Michael阿明
·
2020-08-05 01:15
《深度学习》学习笔记
数据结构与算法之美
(笔记1)数组
随机访问链表适合插入,删除,时间复杂度是O(1),数组支持随机访问,根据下标随机访问的时间复杂度是O(1)。插入,删除插入操作假设数组的长度为n,现在,如果我们需要将一个数据插入到数组中的第K个位置。为了把第K个位置腾出来,我们需要把k后的n-k位置顺序向后移动一位。最好时间复杂度:在最后一位插入,时间复杂度为:O(1)。最坏时间复杂度:在第一位插入,时间复杂度是:O(n)。平均时间复杂度:我们有
Joson_chan
·
2020-08-04 20:27
数据结构与算法
数据结构与算法之美
笔记03----为什么很多编程语言中数组都从0开始编号
数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。顾名思义,线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。而与它相对立的概念是非线性表,比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是简单的前后关系。连续的内存空间和相同类型的数据,因为这两个限制,它
spillove
·
2020-08-04 18:16
数据结构与算法
数据结构与算法之美
学习笔记02 - 数组
数组的基本概念1.线性表:线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。非线性表:数据之间并不是简单的前后关系2.连续的存储空间和相同类型的数据一维数组的寻址公式a_address[i]=base_address+i*data_type_size二维数组的寻址公式a[m][n]={}a[i][j]_address=base_address+(i*m+j)*data
小小洪人
·
2020-08-04 17:18
数据结构与算法学习
数据结构与算法之美
学习笔记(5~9章)
第五章数组:为什么很多编程语言中数组都从0开始编号?1.数组的定义数组是一种线性表数据结构,他用一组连续的内存空间,来存储相同类型的数据2.数组为什么可以根据下标随机访问数组元素(这里要注意不根据下标是不能随机访问的啊)假设一个长度为10的int型数组,会分配一块连续内存空间1000~1039,其中,内存块首地址是1000我们可以通过以下公式快速获取到指定下标的元素a[i]_address=bas
踟蹰千年
·
2020-08-04 13:00
#
数据结构(排序
查询)
【
数据结构与算法之美
】读书笔记04 -- 数组
目录前言数组关键词线性表连续的内存空间和相同类型的数据随机访问数组与链表低效的插入和删除插入操作原理优化删除操作原理优化数组越界容器和数组选择数组从0开始我们常说工作中遇不到数据结构和算法,其实是我们主动或无意识过滤掉这样的机会。前言整理自博客:https://github.com/foreverZ133/Beauty-of-Data-Structure-and-Algorithms/issues
咸鱼翻面
·
2020-08-04 11:38
数据结构与算法
字符串匹配算法(多模式串)
本文是
数据结构与算法之美
的学习笔记上一篇了解了单模式串匹配算法,现在来学习多模式串匹配算法,首先需要了解Trie树Trie树的概念Trie树也叫字典树或者前缀树,它是一个树形的结构。
chsmy2018
·
2020-08-04 11:14
数据结构与算法
字符串匹配基础(上):如何借助哈希算法实现高效字符串匹配?
------本文是学习算法的笔记,《
数据结构与算法之美
》,极客时间的课程------字符串匹配这样一个功能,我想对于任何一个开发工程师来说,应该都不会陌生。
every__day
·
2020-08-04 10:26
算法与数据结构
【数据结构与算法】之字符串匹配算法之 BF、RK、BM --- 第十八篇
本文为极客时间《
数据结构与算法之美
》专栏的学习笔记。
pcwl1206
·
2020-08-01 09:01
数据结构与算法
《
数据结构与算法之美
》-------- 栈 (实现算术表达式的求值 java语言实现)
利用栈实现算术表达式的求值packagecom.my.datastructure;importjava.util.Stack;/***@authorzhe.sun*@Description:利用栈实现算术表达式的求值*@date2020/5/823:25*/publicclassStackTest{publicstaticvoidmain(String[]args){System.out.prin
哲里哲里
·
2020-07-30 13:25
数据结构
数据结构
算法
数据结构与算法之美
| 数据结构中到底有多少种“树”?一文告诉你
你学了这么多年数据结构,到底有多少种树,你知道吗?数据结构中有很多树的结构,其中包括二叉树、二叉搜索树、2-3树、红黑树等等。本文中对数据结构中常见的几种树的概念和用途进行了汇总,不求严格精准,但求简单易懂。数据结构中到底有多少种“树”1.二叉树1.1二叉树的定义1.2二叉树的示例1.3满二叉树和完全二叉树1.3.1满二叉树1.3.2完全二叉树1.4二叉树的性质2.二叉查找树3.平衡二叉树3.1平
Charmve
·
2020-07-30 13:24
面试技术贴分类整理
数据结构与算法之美
Charmve
Coding
数据结构
算法
数据结构与算法之美
| 你知道快速排序,那你知道它的衍生应用吗?Partition函数
昨天面试完字节跳动头条的测试开发,我更是想要规划写一篇应届生校园招聘的面经,做一个总结。不管你面试哪个方向,主要考察内容都是C++软件知识、操作系统、计算机网络、数据库这几类。因此,我以字节跳动面试的主要内容按这几类分类整理,供大家参考,之后也会在此基础上进行整理完善。面试系列文章:点击这里直接跳转面试经验贴专栏字节跳动春招测试开发工程师面试3月18号(附参考答案)《数据结构与算法》上机实验专栏链
Charmve
·
2020-07-30 13:22
面试技术贴分类整理
数据结构与算法之美
Charmve
Coding
《链表与数组》
参考极客时间王争的《
数据结构与算法之美
》专栏。首先我们得知道是什么数组?数组是一种线性表的数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。
不够果断是种癌
·
2020-07-29 12:59
【学习】
数据结构与算法之美
——基础篇笔记
目录05数组什么是数组数组的下标随机访问二维数组低效的“插入”和“删除”与巧思1.插入操作2.删除操作注意访问越界问题容器VS数组容器的优点:何时用数组?总结0605数组什么是数组数组是线性表中的一种数组使用连续的存储空间,存储一组相同类型的数据数组的下标随机访问通过寻址公式,计算出该元素存储的内存地址a[i]_address=base_address+i*data_type_size值得注意的是
Yummy_Ou
·
2020-07-28 23:08
课程学习
算法
数据结构
C++ vector 关于容器扩容思考
在读到文章《
数据结构与算法之美
》关于数组和容器一节时(笔记在此),提到容器的优点:将很多数组操作的细节封装起来,如数组插入、删除数据时需要搬移其他数据等支持动态扩容,每次存储空间不够的时候,它都会将空间自动扩容为
Yummy_Ou
·
2020-07-28 23:08
C++
Python
【学习】
数据结构与算法之美
——入门篇笔记
目录01学习数据结构与算法的重要性02如何学习03复杂度分析大O复杂度表示法时间复杂度分析方法常见的时间复杂度空间复杂度分析总结04最好、最坏、平均、均摊时间复杂度最好、最坏情况时间复杂度平均情况时间复杂度均摊时间复杂度总结01学习数据结构与算法的重要性虽然现在已经有很多框架可以使用,但是背后的原理不懂,如何取舍选择哪种框架?代码的可读性、健壮性,还是扩展性固然重要,但我们至少要学会评估代码的性能
Yummy_Ou
·
2020-07-28 23:08
课程学习
《
数据结构与算法之美
》读后感——04(上)
一、为什么要做复杂度分析精确的计算算法的效率的方法——事后统计法。通过监控程序执行的时间和使用的内存,来评价程序的执行效率。事后统计法的不足:1.不同的机器的运行的结果可能不同,例如机器的cpu越快,代码的执行效率越高。2.数据对算法的执行效率有很大的影响。以排序算法为例,如果数据已经是有序了的,执行的时间很短,如果数据是逆序的,执行的时间是最长的。二、什么是复杂度分析复杂度分析是通过一定的方法总
let4897
·
2020-07-28 01:51
数据结构和算法
《
数据结构与算法之美
》读后感——03(下)
一、分析例子一//n表示数组array的长度intfind(int[]array,intn,intx){inti=0;intpos=-1;for(;i
let4897
·
2020-07-28 01:51
数据结构和算法
数据结构与算法之美
学习心得 1为什么要学习数据结构和算法
为什么要学习数据结构和算法1.面试需要很多大公司面试都喜欢考算法,让人现场写代码,越是厉害的公司,越注重考查数据结构和算法这类基础知识,基础不牢,地动山摇。你的基础是否牢固,决定了你解决问题的能力是否稳固,更体现了你是否具有长期发展的潜力。2.锻炼逻辑思维能力有时候我们可能并不会用到数据结构和算法,但是我们学任何知识都是为了“用”的,是为了解决实际问题的,有点工作岗位并不需要自己去实现数据结构和算
A我是卖眼镜的小绅士
·
2020-07-27 14:43
数据结构与算法之美
-学习心得系列一
本来打算贴上极客时间的目录图片,结果发现图片太长了。影响到阅读,何况我并不是为了宣传极客时间的专栏。作为一名软件工程师,为什么要学习数据结构和算法?看到这个标题,我打算先不看文章,先自己反思一下。自己写程序多年,发现在做很多项目的时候被算法限制了自己的发挥,很多实现明明知道应该有更好的办法,但是就是无法写成代码。还有很多时候,看别人的源码也会一知半解,甚至要加上断点调试才知道整个实现逻辑。所以,算
weixin_34151004
·
2020-07-27 13:46
《
数据结构与算法之美
》28——动态规划理论
前言上一节通过两个经理案例初步认识动态规划,今天这一节主要讲动态规划的理论知识。“一个模型三个特征”理论讲解实际上,动态规划作为一个非常成熟的算法思想,这部分理论总结为“一个模型三个特征”。一个模型一个模型指动态规划适合解决的问题模型。这个模型定义为“多阶段决策最优解模型”。一般是用动态规划来解决最优问题。而解决问题的过程,需要经历多个决策阶段。每个决策阶段都对应着一组状态。然后寻找一组决策序列,
大杂草
·
2020-07-27 12:33
数据结构与算法之美
学习心得 2如何抓住重点学习数据结构与算法
1.什么是数据结构与算法广义上:数据结构就是一组数据的储存结构,算法就是操作数据的一组方法。狭义上:某些著名的数据结构和算法,例如栈,队列,链表,二分查找,动态规划等,都是前人的智慧结晶,可以直接拿来用。2.数据结构和算法的关系数据结构是为算法服务的,算法又必须作用在特定的数据结构之上,两者无法孤立来讲。3.学习的重点3.1复杂度分析时间复杂度(效率)和空间复杂度(资源消耗)。3.2常用的数据结构
A我是卖眼镜的小绅士
·
2020-07-27 11:22
学习心得
数据结构与算法之美
学习心得3
复杂度分析(上):如何分析、统计算法的执行效率和资源消耗为什么需要复杂度分析事后统计法:把代码跑一遍,通过统计、监控来得到算法执行的时间和占用的内存大小。缺点:1.测试结果非常依赖测试环境测试环境中的硬件不同会导致测试结果也不同。2.测试结果受数据规模的影响很大数据规模太大,测试代码需要花费的时间就太多了;数据规模太小,反映不出算法的真实性能;对于排序算法,待排序的数据的初始有序度也会影响测试结果
A我是卖眼镜的小绅士
·
2020-07-27 11:22
《
数据结构与算法之美
》27——初识动态规划
前言今天开始学习动态规划,一共有三节,分别是:初识动态规划、动态规划理论、动态规划实战。今天这一节就是初识动态规划。动态规划比较适合用来求解最优问题,比如最大值、最小值等等。它可以非常显著地降低时间复杂度,提高代码的执行效率。下面会通过两个非常经典的动态规划问题模型来展示为什么需要动态规划,以及动态规划解题方法是如何演化出来的。0-1背包问题对于一组不同重量、不同分割的物品,我们需要选择一些装入背
大杂草
·
2020-07-25 21:24
数据结构与算法之美
(三)——算法
《
数据结构与算法之美
》是极客时间上的一个算法学习系列,在学习之后特在此做记录和总结。一、递归递归求解问题的分解过程,去的过程叫“递”,回来的过程叫“归”。只要同时满足以下三个条件,就可以用递归来解决。
咖啡机(K.F.J)
·
2020-07-19 18:00
数据结构与算法之美
(二)——数据结构
《
数据结构与算法之美
》是极客时间上的一个算法学习系列,在学习之后特在此做记录和总结。一、数组数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。
咖啡机(K.F.J)
·
2020-07-18 16:00
数据结构与算法之美
(一)——入门
《
数据结构与算法之美
》是极客时间上的一个算法学习系列,在学习之后特在此做记录和总结。掌握数据结构和算法,不管对于阅读框架源码,还是理解其背后的设计思想,都是非常有用的。
咖啡机(K.F.J)
·
2020-07-17 10:00
《
数据结构与算法之美
》读后感——04
一、如何实现随机访问1、什么是数组数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。2、怎么计算数组中任一元素在内存中的位置因为数组线性表的特性,所以数组中的元素是一个接一个地按顺序排列的。又因为数组的内存空间是连续的,所以数组中的元素在内存中的位置也是相邻的。最后因为数组存放的数据都是相同的,所以数组为每一个元素分配的空间大小也是相同的。由上可以得出数
let4897
·
2020-07-16 01:08
数据结构和算法
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他