![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
会写代码的劫
厚积薄发,一个小小的码农
展开
-
迷宫回溯问题用递归实现
思路是先创建一个二维数组map,模拟迷宫地图,数组值1 表示墙 ; 0 表示小球可以走,小球只能从不是墙的地方走,下面是初始地图代码实现:map 表示地图i,j 表示从地图的哪个位置开始出发 (1,1)如果小球能到 map[6][5] 位置,则说明通路找到.约定: 当map[i][j] 为 0 表示该点没有走过 当为 1 表示墙 ; 2 表示通路可以走 ; 3 表示死路在走迷宫时,需要确定一个策略(方法) 下->右->上->左 , 如果该点走不通,再回溯public原创 2020-05-21 20:40:16 · 165 阅读 · 0 评论 -
java单链表逆置细致讲解
public class ListReverse { //静态内部类作为链表节点 static class Node{ //节点数据 int data; //指向下一个节点 Node next; Node(int val){ this.data=val; this.next=null; } Node(){} } //原创 2020-05-20 11:16:01 · 810 阅读 · 0 评论 -
数据结构(五):排序算法
/*插入排序*/public static void insertSort(int[] arr){ int tmp = 0; for (int i = 0; i < arr.length; i++) { for (int j = i; j >=0; j--) { if (arr[i]<arr[j]){ ...原创 2020-05-07 15:13:13 · 130 阅读 · 0 评论 -
数据结构(四):用二叉堆实现优先队列
优先队列是用来找出、返回并删除优先队列中最小的元素。插入等于入队,删除等于出队。用二叉堆来实现插入和删除的最坏时间复杂度为O(logN)。//二叉堆为完全二叉树结构public class BinaryHeap<AnyType extends Comparable<? super AnyType>> { private static final int DEFA...原创 2020-04-18 19:17:24 · 598 阅读 · 0 评论 -
数据结构(三) :二叉查找树的基本实现
public class BinarySearchTree<AnyType extends Comparable<? super AnyType>> { private static class BinaryNode<AnyType>{ BinaryNode(AnyType theElement){ this(th...原创 2020-04-14 13:52:49 · 126 阅读 · 0 评论 -
数据结构(二):一个数组固定分割实现三个栈
//一个数组固定分割实现三个栈public class StackByArray { //栈大小 int stackSize = 100; //三个栈的栈顶指针 int[] stactTopOfStack = {-1,-1,-1}; //存放数据的数组 int[] theArray = new int[stackSize*3]; //入栈方...原创 2020-04-09 16:32:27 · 125 阅读 · 0 评论 -
数据结构(一):自己实现一个MyLinkedList
最近开始学习数据结构,看的是数据结构与算法分析(java语言描述)第3版,自己看着书上敲了一个MyLinkedList加上了自己分析的注释。public class MyLinkedList<AnyType> implements Iterable<AnyType> { //集合长度 private int theSize; //用来在迭代器循环...原创 2020-04-08 16:27:13 · 379 阅读 · 0 评论