![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
大鱼qss
阳光的java程序员
展开
-
基本计算器
计算器原创 2022-09-12 10:40:12 · 186 阅读 · 0 评论 -
(剑指Offer 28). 对称的二叉树
两种思路:思路1建立一个翻转的二叉树newroot ,然后比较两个二叉树是都相同。翻转代码:TreeNode jing(TreeNode root) { if(root == null || (root.left == null && root.right == null)) return root; TreeNode newroot = new TreeNode(root.val); newroot.left.原创 2022-05-10 22:09:46 · 103 阅读 · 0 评论 -
(剑指 Offer 27). 二叉树的镜像
这是一个典型的递归题目,首先看结束条件:如果root为空或者root为单个节点则直接返回该节点。否则定义一个和root val相同的节点newroot;将root节点的左孩子翻转后的结果给newroot右孩子;将root节点的只右孩子翻转后的结果给newroot左孩子;代码如下:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * .原创 2022-05-10 21:26:56 · 100 阅读 · 0 评论 -
(剑指 Offer)从上到下打印二叉树 I;从上到下打印二叉树 II
从上到下打印二叉树 I二叉树的层次遍历,一般层次遍历使用队列,思路如下:将树根元素root入队开始循环:每次判断队列是否为空,为空则结束循环不为空执行以下步骤将队头元素出队,将队头val存储;将队头节点的左右孩子入队;代码如下 ans.offer(root); while(!ans.isEmpty()) { TreeNode temp = ans.poll(); res.add(temp.原创 2022-05-10 09:56:22 · 223 阅读 · 0 评论 -
最小基因变化(BFS)
经典的BFS暴力搜索的题目,使用一个队列进行BFS搜索即可,到达终点即返回step。有一点需要注意,走完一层算一步。为了不走回头路使用HashSet去存储走过的节点。总体代码如下:class Solution { public int minMutation(String start, String end, String[] bank) { HashSet<String> bank_set = new HashSet<>(); Hash.原创 2022-05-08 14:27:30 · 151 阅读 · 0 评论 -
LinkedList(对队列、、栈、list实现的简单理解)
自己对LinkedList的一些了解实现了三种数据结构:1. List链表的实现:方式如下:LinkedList<E> ans = new LinkedList<>();这里表示双端队列,在插入、删除频繁的时候常用,效率较高,但查找节点比较麻烦,用接口:即获得元素、链表长度、添加元素、删除元素、判断为空、排序、判断是否包含某个元素2. 队列的 实现:Queue<Integer> ans = new LinkedList<>();需要尾原创 2022-05-05 11:37:04 · 615 阅读 · 0 评论 -
复杂链表的复制(中等)
这个题目在复制的时候需要考虑random指向的结点是否需要new或者是否不存在这个问题,所以我们可以先用,按照正常链表复制的思路,下一个节点肯定需要复制,所以可以使用递归的思路先复制完成下一个节点,然后复制random指向的节点,判断节点是否存在使用HashMap,具体代码如下:/*// Definition for a Node.class Node { int val; Node next; Node random; public Node(int val) ..原创 2022-05-04 22:02:59 · 290 阅读 · 0 评论 -
1823. 找出游戏的获胜者
这是一个经典的约瑟夫环问题使用队列模拟去解决这个问题这个:class Solution { public int findTheWinner(int n, int k) { Queue<Integer> ans = new LinkedList<>(); for(int i = 1 ;i <= n ; i++) { ans.offer(i); } whil原创 2022-05-04 10:14:51 · 978 阅读 · 0 评论 -
从二叉树到B树再到红黑树
从二叉树到B树再到红黑树原创 2022-04-22 10:14:18 · 211 阅读 · 0 评论