数据结构和算法
suifeng寻梦天涯
一直走下去,不必都留着,因为这一路上花自然会开放。
展开
-
单链表的增删改查
1.链表介绍 链表是有序的列表,但是它在内存中是存储如下 小结: 链表是以节点的方式来存储,是链式存储 每个节点包含 data 域, next 域:指向下一个节点. 如上图:发现链表的各个节点不一定是连续存储. 链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定 2.带头节点的链表增删改查操作 分析示意图: 1)新增节点信息: 2)删除节点信息: 3.代码演示: package main.java.Demo04_单链表; public class SingleLinkedListDemo原创 2021-01-04 22:05:18 · 349 阅读 · 1 评论 -
数组模拟环形队列
1.环形队列 分析说明: 1)尾索引的下一个为头索引时表示队列满,即将队列容量空出一个作为约定,这个在做判断队 列满的时候需要注意 (rear + 1) % maxSize == front 满。 2)rear == front [空] 3)分析示意图: 2.代码实现: package main.java.Demo03_环形队列.CircleArrayQueueDemo; import java.util.Scanner; public class CircleArrayQueueDemo {原创 2020-12-31 12:42:54 · 138 阅读 · 0 评论 -
队列的简单介绍与使用
一.队列介绍 1.队列是一个有序列表,可以用数组或是链表来实现。 2.遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出 示意图:(使用数组模拟队列示意图) 3.当我们将数据存入队列时称为”addQueue”,addQueue 的处理需要有两个步骤:思路分析 将尾指针往后移:rear+1 , 当front == rear 【空】 若尾指针 rear 小于队列的最大下标 maxSize-1,则将数据存入 rear所指的数组元素中,否则无法存入数据。 rear == maxSize原创 2020-12-29 17:14:30 · 213 阅读 · 0 评论 -
五子棋算法模拟实现
1.棋盘算法图解 2.算法实现 package main.java.Demo01_棋盘算法; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; import java.ut原创 2020-12-29 11:35:56 · 1069 阅读 · 0 评论