
数据结构与算法
不不不不羁
控
展开
-
415. 字符串相加
**给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。提示:num1 和num2 的长度都小于 5100num1 和num2 都只包含数字 0-9num1 和num2 都不包含任何前导零你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-strings**class Solution { public String addS原创 2021-06-23 15:22:12 · 116 阅读 · 0 评论 -
56. 合并区间(带有详细注释)
Array.sort()方法的一种用法(菜鸟第一次见),Array.sory(intervals,xxxx),后面的xxxx主要是看正负。 Arrays.sort(intervals, new Comparator<int[]>() { @Override public int compare(int[] o1, int[] o2) { return o1[0] - o2[0]; }原创 2021-06-08 20:36:11 · 161 阅读 · 0 评论 -
429. N 叉树的层序遍历(详细注释)
题目给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)。树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。在树上使用队列的遍历算法的基本算法List<Integer> values = new ArrayList<>(); //用于盛放按顺序拿出来的值Queue<Node> queue = new LinkedList<>();//用于盛放每一层的节点,队列存放节点。首先将根节点放到队列中,//当队列原创 2021-06-07 20:33:16 · 191 阅读 · 0 评论 -
牛客网-旋转数组
看到是有序数组的变型,想到可以使用二分查找法。二分查找分递归法和非递归法,这里只给出非递归法的解法。import java.util.ArrayList;public class Solution { public int minNumberInRotateArray(int [] array) { int len = array.length; if (len == 0)//首先排除空数组 return 0; int l原创 2021-05-07 09:42:17 · 161 阅读 · 0 评论 -
牛客网-反转链表
解法一:import java.util.Stack;public class Solution { public ListNode ReverseList(ListNode head) { Stack<ListNode> stack = new Stack<>(); //把链表节点全部摘掉放到栈中; while (head != null) { stack.push(head);原创 2021-05-02 20:38:17 · 170 阅读 · 0 评论