自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 力扣 - 二叉树的(前中后)序遍历(递归和迭代解决 模板化)

力扣链接 前序:https://leetcode-cn.com/problems/binary-tree-preorder-traversal/submissions/ 中序:https://leetcode-cn.com/problems/binary-tree-inorder-traversal/ 后序:https://leetcode-cn.com/problems/binary-tree-postorder-traversal/ 一、分别解释 前序遍历,父节点先遍历,遍历顺序为:父节点-》左节点-》

2021-02-04 16:38:03 139

原创 力扣 -动态规划两道题(买卖股票的最佳时机&最大子序和&爬楼梯)

文章目录一、买卖股票的最佳时机1.暴力法2.dp二、最大子序和1.法一2.dp总结 一、买卖股票的最佳时机 链接https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/ 1.暴力法 代码如下(示例): class Solution { public int maxProfit(int[] prices) { if(prices.length<=1){ return 0;

2021-01-25 13:07:24 150

原创 数据结构与算法-暴力匹配算法&KMP算法

文章目录字符串匹配问题一、暴力匹配算法&KMP算法二、源码1.暴力匹配算法2.KMP算法总结 字符串匹配问题 一、暴力匹配算法&KMP算法 KMP算法: 二、源码 1.暴力匹配算法 代码如下(示例): package Algorithm; //暴力匹配算法 思路:依次进行查找 public class ViolenceMatch { public static void main(String[] args) { String s1 = "硅硅谷 尚硅谷你尚硅

2021-01-19 10:26:27 557

原创 数据结构与算法-动态匹配算法

文章目录动态匹配算法一、背包问题二、源码总结 动态匹配算法 一、背包问题 二、源码 代码如下(示例): package Algorithm; //动态匹配算法解决背包问题 public class Packed { public static void main(String[] args) { //定义2个一维数组,分别存放商品的重量和价格 int[] val = {1500, 3000, 2000}; int[] weight = {1, 4

2021-01-19 10:22:00 895

原创 数据结构与算法-图(深度优先遍历dfs &广度优先遍历bfs)

文章目录图一、优先遍历二、代码1.Graph2.Demo总结 图 一、优先遍历 二、代码 1.Graph 代码如下(示例): Graph; //使用二维矩阵来表示图 import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedList; public class Graph { //用链表表示其中的节点的数据 public ArrayList<String> VertexLi

2021-01-14 19:56:10 307 1

原创 数据结构与算法-平衡二叉树

文章目录平衡二叉树一、概念二、源码1.Node2.Tree2.Demo总结 平衡二叉树 一、概念 二、源码 1.Node 代码如下(示例): package BinarySortTree; public class Node { public int value; public Node left; public Node right; public Node(int value) { this.value = value; }

2021-01-13 17:04:44 92

原创 数据结构与算法-二叉排序树

二叉排序树 一、思路 二、源码 1.Node类 代码如下(示例): package BinarySortTree; public class Node { public int value; public Node left; public Node right; public Node(int value) { this.value = value; } @Override public String toString()

2021-01-12 21:24:23 115

原创 数据结构与算法-树(赫夫曼树)

文章目录赫夫曼树一、几个概念二、赫夫曼树实现源码总结 赫夫曼树 一、几个概念 二、赫夫曼树实现源码 代码如下(示例): package HuffmanTree; import java.util.ArrayList; import java.util.Collections; public class HuffmanTree { public static void main(String[] args) { int[] arr = {13, 7, 8, 3, 29,

2021-01-10 11:40:46 143

原创 数据结构与算法-排序(堆排序)

文章目录堆排序一、堆排序二、源码 堆排序 一、堆排序 二、源码 代码如下(示例): package Sort.HeapSort; import java.util.Arrays; public class Heapsort { public static void main(String[] args) { int[] arr = {4, 6, 8, 5, 9}; System.out.println("原始数组" + Arrays.toString(ar..

2021-01-10 09:58:59 123

原创 数据结构与算法-二叉树(前序中序后续)(增删改查)

文章目录二叉树一、二叉树是什么?二、源码1.Heronode类2.BinaryTree类3.BinaryTreeDemo总结 二叉树 一、二叉树是什么? 二、源码 1.Heronode类 代码如下(示例): package BinaryTree; public class Heronode { private int no; private String name; private Heronode left; private Heronode right; .

2021-01-05 19:01:37 151

原创 数据结构与算法-哈希表(散列表)

文章目录哈希表(散列表)一、哈希表结构二、源码1.定义每个节点2.每个链表的定义3.数组的定义4.Demo总结 哈希表(散列表) 一、哈希表结构 二、源码 1.定义每个节点 代码如下(示例): package Hashtable; //先写出链表中每个节点表示的员工信息 public class Emp { public int id; public String name; public Emp next; public Emp(int id, String na..

2021-01-04 18:52:35 94

原创 数据结构与算法-查找-(顺序查找&二分查找)

文章目录顺序查找&二分查找1.顺序查找2.二分查找总结 顺序查找&二分查找 1.顺序查找 代码如下(示例): package Search.SqueezeSearch; import java.util.ArrayList; //顺序查找出所有与值相等的索引下标 public class SequeezeSearch { public static void main(String[] args) { int[] array = {-1,2,10,12,3,6,.

2020-12-30 16:11:22 161

原创 数据结构与算法-排序-(基数排序&各种排序对比)

文章目录基数排序与各种排序对比1.基数排序2.各种排序对比总结 基数排序与各种排序对比 1.基数排序 代码如下(示例): package Sort.RadixSort; import java.text.SimpleDateFormat; import java.util.Arrays; import java.util.Date; public class Radixsort { public static void main(String[] args) { in..

2020-12-29 15:13:49 388 2

原创 数据结构与算法-排序-(快速排序&归并排序)

= 文章目录快速排序与归并排序1.快速排序2.归并排序总结 快速排序与归并排序 1.快速排序 代码如下(示例): package Sort.Quicksort; import java.util.Arrays; public class QuickSort { public static void main(String[] args) { int[] array = {-9, 78, 0, 23, -567, 70}; int[] array1 = {-7

2020-12-29 10:47:25 141

原创 数据结构与算法-排序-(插入排序&希尔排序)

文章目录插入排序和希尔排序1.插入排序2.希尔排序(2种)总结 插入排序和希尔排序 1.插入排序 代码如下(示例): package Sort.Insertsort; import java.text.SimpleDateFormat; import java.util.Arrays; import java.util.Date; public class Insertsort { public static void main(String[] args) { int..

2020-12-25 16:27:10 87

原创 数据结构与算法-排序-(冒泡排序&简单选择排序)

文章目录排序(Sort)二、冒泡排序和简单选择排序1.冒泡排序2.简单选择排序总结 排序(Sort) 二、冒泡排序和简单选择排序 1.冒泡排序 代码如下(示例): package Sort.Buttonsort; import java.text.SimpleDateFormat; import java.util.Date; /*规则: 1、一共需要进行数组大小-1次的循环 2、每一次排序的次数在逐渐减小 3、如果我们发现在某趟排序中,没有发生一次交换,可以提前结束冒泡排序*/ publi..

2020-12-24 14:45:07 265

原创 数据结构与算法-递归回溯-八皇后问题

文章目录八皇后问题一、源代码总结 八皇后问题 一、源代码 package recurtion; //八皇后问题 public class Queue8 { //定义一个一维数组,其中数组的第几个数为第几个黄后应该摆放的位置,而值为摆放的列数 int max = 8; int[] array = new int[max]; static int count = 0; //打印这个数组的方法 public void print() { ..

2020-12-23 10:42:30 130

原创 数据结构与算法-递归-迷宫问题

文章目录迷宫问题一、问题描述二、源代码总结 迷宫问题 一、问题描述 二、源代码 代码如下(示例): package recurtion; public class Migong { public static void main(String arg[]) { int[][] map = new int[8][7]; for (int i = 0; i < map.length; i++) { map[i][0] = 1; ..

2020-12-22 16:03:22 185 1

原创 数据结构与算法-栈(Stack)-逆波兰表达式(中缀转后缀)

文章目录中缀转后缀的思路一、思路二、源代码总结 中缀转后缀的思路 一、思路 1、中缀–>顺序Arraylist集合 2、顺序ArrayList集合–>逆缀ArrayList形式 3、逆缀ArrayList形式–>计算步骤 二、源代码 代码如下(示例): package Stack; import java.util.ArrayList; import java.util.List; import java.util.Stack; //采用Arraylist和Stack实现逆波兰..

2020-12-21 17:36:31 153 2

原创 数据结构与算法-栈-java源码(数组和链表分别实现)

文章目录栈的实现(数组)一、思路1.Stack2.StackDemo栈的实现(单向链表)一、思路1.Node类2.LinkedStack类3.LinkedStackDemo总结 栈的实现(数组) 一、思路 1.Stack 代码如下(示例): package Stack; //用数组来模拟栈 public class Stack { private int maxsize; //数组最大容量 private int top; //初始化栈顶 初始值为-1 private i..

2020-12-17 15:41:33 120 1

原创 数据结构与算法-约瑟夫链表

约瑟夫链表 一、思路 二、源码 1.节点 代码如下(示例): package CircleSingleLinkedList; public class Boy { private int no; private Boy Next; public Boy(int no){ this.no=no; } public int getNo() { return no; } public void setNo(int no)

2020-12-16 16:46:23 207

原创 数据结构与算法-单向链表-练习3(合并两个有序链表)

题目:合并两个有序的单链表,合并之后的链表依然有序 一、思路:定义一个新的头结点,首先比较2个链表的1号节点,那个大就连起来,然后后移,在比较大小,在连起来。依次到最后为空截止。 代码如下(示例): public HeroNode addtwolinkedlist(HeroNode head1, HeroNode head2) { //新链表的头结点 HeroNode newhead = new HeroNode(0, "", ""); if (head1.

2020-12-15 15:42:19 162

原创 数据结构与算法-单项链表-练习2(反转链表和从尾到头打印链表)

题目一:单链表的反转 题目二:从尾到头打印链表 一、单链表的反转 思路:将原始链表节点按顺序依次取出来,每次取出来的节点放在新链表的头结点与头结点的后一个节点之间。 代码如下(示例): public void reverse(HeroNode heroNode) { //如果没有节点或者只有一个节点 不需要反转 if (head.next==null||head.next.next==null){ return; }

2020-12-14 14:43:45 127

原创 数据结构与算法-单向链表-练习1(查找有效结点和倒数第k个结点)

题目:1、求单向链表中有效节点的个数 2、查找单向链表中倒数第k个节点 一、解答 1.遍历整个单向链表即可 可以写在SingleLinkedList类中。这里传入的是头节点,然后返回的是单向链表的长度。 思路:遍历整个单向链表就行了。 代码如下(示例): public int getlength(HeroNode head){ if (head.next==null){ System.out.println("链表为空,无有效节点"); ...

2020-12-11 16:09:45 122

原创 数据结构与算法-单向链表-java源码

自己听完课,写了一遍,然后debug了一遍,感同身受! 文章目录java源码实现(带自己写的注意事项及解析)一、源码1.定义HeroNode类2.定义SingleLinkedList类3.SingleLinkedListDemo总结 java源码实现(带自己写的注意事项及解析) 一、源码 1.定义HeroNode类 代码如下(示例): package SingleLinkedList; public class HeroNode { public int no; public Stri

2020-12-11 14:31:16 122 1

原创 数据结构与算法-链表-单项链表介绍

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 单向链表的介绍 ![](https://img-blog.csdnimg.cn/20201211104009408.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NsaWdodGluZzExMjg=,size_16,color_FFFFFF,t_70) 一、带头节点的单向链

2020-12-11 10:46:59 81

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除