全国校区
北京
深圳
上海
广州
武汉
成都
西安
郑州
南京
长沙
Java实验班
Java就业班
Java在职加薪班
Java架构师班
Java夜校班
JavaSE
数据库
JavaWeb
流行框架
分布式
微服务
对于刚刚开始学习算法的小伙伴来说,第一次看见时间复杂度这个词难免有点小疑惑,似乎是一个很抽象的东西,很难去理解。实际上算法时间复杂度是一个代表算法输入值的字符串的长度的函数,它定性描述该算法的运行时间。一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都...
在计算机科学中,树(英语:tree)是一种抽象资料型别(ADT)或是实作这种抽象资料型别的数据结构,用来模拟具树状结构性质的资料集合。而森林是树的集合,由此可以对森林中的每一棵树依次从左到右进行先根遍历或者后根遍历。森林中的(第一棵树的根)、(第一棵树的子树森林)及(其余树构成的森林),分别对应为(二叉树的根)...
很多人都知道WebServer,但说到HTTPServer却很少有人知道,那么HTTPServer是什么呢?一般来说,HTTPServer也是我们常说的Web服务器,大名鼎鼎的Apache,还有微软的IIS(InternetInformationServer),开源领域的有Lighttpd和最近风头正劲的Ngi...
树是一种重要的非线性数据结构,直观地看,它是数据元素(在树中称为结点)按分支关系组织起来的结构,很象自然界中的树那样。树中的某个结点的孩子可以有多个,所以仅仅使用简单的顺序结构或者链式结构是不能完全表示一整棵树的。充分利用顺序存储结构和链式存储结构的特点,完全可以实现对树的存储结构的表示。树的存储结构可以分为3...
算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。不同的算法可能用不同的时间、空间或效率来完成同样的任务,也就是它们的空间复杂度与时间复杂度可以,但是算法必须要有算法的5种基本特征。1.有穷性(Finiteness)算法的有穷性是...
链式存储结构,又叫链接存储结构。在计算机中用一组任意的存储单元存储线性表的数据元素。链式存储结构不要求逻辑上相邻的元素在物理位置上也相邻,因此它没有顺序存储结构所具有的弱点,但也同时失去了顺序表可随机存取的优点。链式存储结构一般有单链表、静态链表、循环链表和双向链表。下面为大家一一介绍:1.单链表n个结点链结成...
在系统中,用户进程数一般都多于处理机数,这将导致它们互相争夺处理机。另外,系统进程也同样需要使用处理机。这就要求进程调度程序按一定的策略,动态地把处理机分配给处于就绪队列中的某一个进程,以使之执行。本文我们就来介绍这些进行动态分配的进程调度算法。一、先来先服务和短作业(进程)优先调度算法1.先来先服务调度算法按...
为什么要学习数据结构与算法目的:我们学习数据结构与算法,并不是为了死记硬背几个知识点。我们的目的是建立时间复杂度、空间复杂度意识,写出高质量的代码,能够设计基础架构,提升编程技能,训练逻辑思维,积攒人生经验,以此获得工作回报,实现个人价值。系统高效的学习数据结构与算法定义:从广义上讲,数据结构就是指一组数据的存...
数据结构是以某种形式将数据组织在一起的集合,它不仅存储数据,还支持访问和处理数据的操作。算法是为求解一个问题需要遵循的、被清楚指定的简单指令的集合。经常有同学学到这里的时候会问到“数据结构与算法讲得好的视频”,今天除了给大家整理了一些技术上的整理,还给大家推荐一套适合萌新看的Java数据结构与算法实战视频教程,...
在Java中数组有很多常用的算法,常用的排序算法包括冒泡排序,直接选择排序等,一般在开发中,需要对一组数组进行排序,这时候就可以使用排序算法排序。其中冒泡排序是比较常用的数组排序算法之一,冒泡排序主要是排序数组的过程总是将小数往前放,大数往后放。Java数组冒泡排序其实就是对比相邻的值,如果满足条件就交换值。一...