- 博客(8)
- 收藏
- 关注
原创 递归实现迷宫问题2(查找最短路径)-作业
代码package com.atguitu.recursion;/** * * @author little_pine * 当前进度: 全部完成 * */public class MiGongSearchShortestPath { public static void main(String[] args) { // 先创建一个二维数组, 模拟迷宫 // 地图 int[][] map = new int[8][7]; // 创建地图 setMap(map);
2021-04-25 12:22:47
446
原创 递归实现迷宫问题1 (不查找最短路径)-韩老师
代码package com.atguigu.recursion;public class MiGong { public static void main(String[] args) { // 先创建一个二维数组, 模拟迷宫 // 地图 int[][] map = new int[8][7]; // 使用1 表示墙 // 上下全部置为1 for (int i = 0; i < 7; i++) { map[0][i] = 1; map[7][i] = 1;
2021-04-24 22:16:40
150
原创 逆波兰(后缀表达式)计算器(支持小括号)-作业
代码package com.atguigu.stack;import java.util.ArrayList;import java.util.List;import java.util.Stack;import javax.management.RuntimeErrorException;public class PolandNotation { public static void main(String[] args) { //完成将中缀表达式转成后缀表达式的功能
2021-04-23 17:26:38
160
原创 中缀表达式计算器(仅支持加减乘除,不支持小括号)
思路以及代码package com.atguigu.stack;//数的加减乘除,使用栈,中缀表达式,不包含小括号public class Calculator {// 使用栈完成计算一个表达式的结果// 使用栈完成表达式的计算思路// 1. 通过一个index值(索引),来遍历我们的表达式// 2. 如果我们发现是一个数字,就直接入数栈,// 3. 如果发现扫描到的是一个符号,就分如下情况// 1. 如果当前的符号栈为空,就直接入栈// 2. 如果符号栈有操作符,就进行
2021-04-21 23:08:36
192
原创 使用数组或者单链表实现栈及其基本操作
数组实现栈package com.atguigu.stack;import java.util.Scanner;public class ArrayStackDemo { public static void main(String[] args) { //测试一下ArrayStack是否正确 //先创建一个ArrayStack对象->表示栈 ArrayStack stack = new ArrayStack(4); String key = ""; boolean
2021-04-21 17:34:22
234
原创 约瑟夫问题的代码实现(单向环形链表)
package com.atguigu.linkedlist;/** * 约瑟夫问题:设编号为 1, 2, ... n 的 n 个人围坐一圈,约定编号为k (1<=k<=n) 的人从1开始报数,数到m 的那个人出列,它的下一位又从1 开始报数,数到m 的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列例子:n = 5,即有5 个人k = 1,从第一个人开始报数m = 2,数到2出圈出圈的顺序:2->4->1->5->3单向环形链表实
2021-04-14 22:06:47
126
原创 双链表的基本操作
双向链表基本操作使用带head头节点的双向链表实现 - 水浒英雄排行榜管理单项链表的的缺点分析:1. 单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后查找2. 单项链表不能自我删除,需要靠辅助节点,而双向链表可以自我删除,所以前面我们单链表删除节点时总是找到temp,当时的temp是待删除节点的前一个节点,而双向链表中的temp,只是起一个定位作用3. 分析了双向链表表如何完成遍历、添加、按编号顺序添加、修改、删除的思路分析双向链表的遍历、添加、修改、删除的操作思路:1. 遍
2021-04-14 11:57:12
127
原创 单链表的定义、操作和应用
单链表的定义、操作和应用-尚硅谷-韩老师课程和作业上代码和注解上代码和注解// An highlighted block/*三大板块1.定义节点2.定义单链表操作 1.创建单链表 2.遍历单链表 3.修改单链表节点的值 4.删除单链表节点 5.将添加的节点按顺序排列3.实际应用 1.求单链表中有效节点的个数 2.查找单链表中的倒数第k个节点【新浪面试题】 3.单链表的反转【腾讯面试题】 思路: 1.先定义一个节
2021-04-12 12:07:36
367
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人