
数据结构-编程之美
该专栏专注于数据结构和算法相关内容的讲解, 将会带你领略各种不同的数据结构在实际场景中的实战使用
冷风DMW
现在有多努力,以后就有多少选择
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java实现选择排序
概念:选择排序是比较常见的排序算法之一, 实现思路为从头到尾遍历数据,找出最小(大)的一个值和第一个未排序元素交换,接着从剩下的元素中继续查找最小值, 直到成为有序数列代码实现:/** * @author LFDMW * @date 2021-05-09 11:10 */public class SelectSort { public static void main(String[] args) { int[] arr = {5, 6, 1, 2, 9, 3, 7};原创 2021-05-09 11:38:53 · 187 阅读 · 0 评论 -
Java实现二分查找
二分查找法作用:从一个有序数组中找到目标值思路:我们每次通过折半将数组一分为二, 进行中间值比较, 如果中间值大于目标值, 那么我们将左半部分的数组继续折半再用中间值和目标值进行比较, 反之则为右半部分代码实现:/** * @author LFDMW * @date 2021-05-09 11:10 */public class BinarySearch { public static void main(String[] args) { int[] arr = {原创 2021-05-09 11:27:19 · 263 阅读 · 0 评论 -
Java实现冒泡排序优化版
之前写过一篇关于冒泡排序的文章,飞机:冒泡排序今天我们来看一个优化版本,关于原理之前已经有了,不懂的可以直接跳转到上一篇文章,本篇直接贴代码:/** * @author LFDMW * @date 2021-01-12 21:43 */public class BubbleSort { public static void main(String[] args) { int[] nums = {3, 1, 8, 9, 2, 7, 0}; int sortB原创 2021-01-17 16:42:27 · 223 阅读 · 1 评论 -
什么是数据结构?
什么是数据结构?在计算机的课程中,数据结构是不可缺少的一部分,在日常开发中,充满了各种各样的数据结构,那么我们如何来理解并学习数据结构?数据结构到底是什么?官方来说,数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成数据结构决定了数据的顺序和位置关系,比如:一排箱子,每个箱子里存放一本书,那么这本书就是一个数据,箱子则代表内存.数据存储在内存时,决定...原创 2019-06-25 16:27:15 · 2186 阅读 · 1 评论 -
数据结构之链表
链表链表是数据结构之一,链表中的数据是呈线性排列的,链表中,数据的添加和删除的效率很高,时间复杂度为O(1),但是查询的效率就较满,与数组正好相反.下一篇文章会介绍一下数组.链表中每个数据都有一个指针,用来指向下一个数据的内存地址在链表中,数据一般是分散存储在内存中的,无须连续存储在内存,所以想要访问数据的话需要从第一个数据开始访问,顺着指针的指向来进行一一访问,比如:根据指针的方向来看...原创 2019-06-26 10:33:58 · 779 阅读 · 0 评论 -
数据结构之数组简单介绍
数组数组也是一种线性排列的一种数据结构,与上一篇文章数据结构之链表不同的是在数组中,查询的效率高,相反,添加和删除的效率就较低.下图则是数组的概念图:arr是数组的名字,后面的" [] “表示哪一个数据,这里面的数字叫做数组下标,或者叫索引,下标是从0开始计数,比如想要查询小红的话则是” arr[1] “,数组的数据是按照顺序存储在内存中连续的空间,所以内存中的每个数据都可以通过下标来取...原创 2019-06-27 13:30:14 · 459 阅读 · 0 评论 -
排序算法之冒泡排序 (java实现)
今天先来介绍一个可以说是最有知名度的排序算法之一----冒泡排序冒泡排序是从左到右或者从右到左来进行依次两两比较的一种排序例如我们要对一个数组进行排序:int[] arr = {5,9,3,7,6}下面我们用一张图来简单看一下 //画的比较low…左面是这个数列原本的样子,我们在进行第一轮排序的时候:1.把5和9进行比较,这里9比5大,所以不调整位置,依然是593762.把9和3...原创 2019-07-16 13:32:07 · 277 阅读 · 0 评论 -
排序算法之选择排序(Java实现)
今天来介绍一下排序算法中的选择排序和冒泡排序相差不大,都是一种比较简单的排序算法,下面我们先来看一下选择排序的原理:原理选择排序,是先选择一个最小(或最大)的元素交换到数组的第一位,然后与其他数据进行比较,然后在剩下的元素中继续寻找最小的元素,然后依次交换,循环直到排序完成代码实现:public static void main(String[] args) { //定义...原创 2019-09-09 09:40:03 · 169 阅读 · 0 评论