04、数据结构与算法 - 基础:查找算法
二分查找算法 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好,占用系统内存较少;其缺点是要求待查表为有序表,且插入删除困难。这个是基础,最简单的查找算法了。 public static void main(String[] ...
二分查找算法 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好,占用系统内存较少;其缺点是要求待查表为有序表,且插入删除困难。这个是基础,最简单的查找算法了。 public static void main(String[] ...
1、冒泡排序 基本思想: 冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 ...
公众号:“皇子谈技术”主理人
本篇博客我们介绍数据结构的鼻祖——数组,可以说数组几乎能表示一切的数据结构,在每一门编程语言中,数组都是重要的数据结构,当然每种语言对数组的实现和处理也不相同,但是本质是都是用来存放数据的的结构,这里我们以Java语言为例,来详细介绍Jav...
第一部分:Java数据结构 要理解Java数据结构,必须能清楚何为数据结构? 数据结构: 1、 Data_Structure,它是储存数据的一种结构体,在此结构中储存一些数据,而这些数据之间有一定的关系。 2、 而各数据元素之间的相互关系,...
摘要 前几期探究过动态数组或者链表后,接下来的栈就可以使用线性表的结构再次封装实现。在实现栈 的时候发现,在线性表的基础上,实现起来更简单。 栈这种数据结构应用到很多场景,比如网页之间的跳转等。 前几期探究过动态数组或者链表后,接下来的栈就...
上一期整体探讨了一下单向链表。在这基础上补充两个点,分别是单向循环链表和双向循环链表。从字面中可以看出是将链表形成个环结构,区别在于这个环是只能一个方向还是两个方向循环。 单向循环链表 单向循环链表可以理解为将单向链表的最后一个节点指向第一...
摘要 上期共同探究了下动态数组的添加、删除等实现方法,想要再回顾一下的话,点击我去再看看。接下来继续探究数组。 其实,动态数组有个明显的缺点,就是有可能造成内存空间的大量浪费。那么有什么办法可以做到用多少就给多少呢?这时,咱接着探究一下链表...
摘要 日常开发中,会经常创建数组,并使用数组的添加、删除等方法。现在就是要以数据结构的方式,来探究一下这些方法是怎么实现的。 本文结构先总结 Array 常用的 API,接下来由简单到复杂,由基础到组合思路实现,最后优化细节。你可以按照文章...
在本教程中,我们将学习如何使用Go将数据写入文件。我们还将学习如何并发写入文件。 本教程包含以下部分 将字符串写入文件 将字节写入文件 逐行将数据写入文件 追加到文件 并发写入文件 将字符串写入文件是最常见的文件写入操作之一,这很简单。它包...
读取文件是所有编程语言中最常见的操作之一。本教程我们将了解如何使用 Go 读取文件。 本教程包含以下部分: 将整个文件读取到内存 使用绝对文件路径 将文件路径作为命令行标志传递 将文件绑定在二进制文件中 分块读取文件 逐行读取文件 将整个文...