04 2022 档案

摘要:这题其实和剑指12矩阵中的路径有一点点像 因为机器人每次只能走一格,所以在当前单元格上进行移动。所以要进行标记走过的单元格。还要保证每次走到的单元格的数位和不超过k 因此递归结束条件为:1、i、j索引越界 2、数位和相加大于k 3、已被访问过 class Solution { int m,n,k,r 阅读全文
posted @ 2022-04-07 17:47 Dreamer_szy 阅读(21) 评论(0) 推荐(0) 编辑
摘要:一道比较典型的回溯题:深度优先遍历+剪枝 对每个二维数组的字符进行遍历,然后对遍历的字符上下左右进行回溯 class Solution { public boolean exist(char[][] board,String word){ for(int i=0;i<board.length;i++ 阅读全文
posted @ 2022-04-07 17:06 Dreamer_szy 阅读(25) 评论(0) 推荐(0) 编辑
摘要:import javax.swing.*; import java.util.*; // class Solution { public int translateNum(int num){ String s=String.valueOf(num); //dp数组表示到达第i位时,共有多少种表示方法 阅读全文
posted @ 2022-04-04 09:20 Dreamer_szy 阅读(21) 评论(0) 推荐(0) 编辑
摘要:快排的时间复杂度为O(nlogn)~O(n),是最快的排序算法,所以找到最小的k个数又不要求顺序的话,快排每次递归以基准值分割是个不缺的想法。 所以可以进行快速排序,当找到基准值的下标是k的时候,说明基准值前面有k个待排序数组中的小的数。 直接把前面的k个数当成子数组输出即可。 public cla 阅读全文
posted @ 2022-04-02 17:53 Dreamer_szy 阅读(18) 评论(0) 推荐(0) 编辑
摘要:快排算法的思想是基于分治的,首先定义一个基准值,将待排序数组分成两块。前一块是比基准值小的,后一块是比基准值大的。将这个基准值排序到它应该的位置的时候,这个时候基准值的位置已经确定了,之后就采用递归的方式分别对基准值前后两块待排序的子数组进行相同方法的排序。 public void quickSor 阅读全文
posted @ 2022-04-02 17:18 Dreamer_szy 阅读(289) 评论(0) 推荐(0) 编辑
摘要:java当中想要输入一个未知长度的数组,可以首先把运行窗口输入的一串数字看成是字符串,以分隔符分割,确定长度后再赋值给数组。 Scanner in=new Scanner(System.in); String[] strnums=null; strnums=in.nextLine().split(" 阅读全文
posted @ 2022-04-02 14:43 Dreamer_szy 阅读(1417) 评论(0) 推荐(0) 编辑
摘要:笔试面试不会构造树,saaad... import java.util.ArrayList; public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x){ this.val=x; } ArrayLis 阅读全文
posted @ 2022-04-01 15:18 Dreamer_szy 阅读(72) 评论(0) 推荐(0) 编辑
摘要:最近面试笔试白板写代码,发现自己连链表都不会构建,放在这里防止自己再忘记 public class ListNode<T> { T val; ListNode next; ListNode(T x){ this.val=x; } } import java.util.ArrayList; impor 阅读全文
posted @ 2022-04-01 14:29 Dreamer_szy 阅读(718) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示