09 2021 档案
摘要:我们可以知道前一排的数字可以直接影响到后一排的取值,且从第一排开始后,之后的首尾都是1.所以如果暴力的话,也可以直接得到正确结果。 public List<List<Integer>> generate(int numRows) { List<List<Integer>> res=new Linke
阅读全文
摘要:对于一个二维数组映射成另一个二维数组,我们可以将二维数组先映射成一个一维数组,然后再将一维数组逐个转为二维数组。 public int[][] matrixReshape(int[][] mat, int r, int c) { int m = mat.length; int n = mat[0].
阅读全文
摘要:该题在两个数组排序后使用双指针求解。 public int[] intersect(int[] nums1, int[] nums2) { Arrays.sort(nums1); Arrays.sort(nums2); int i=0,j=0; List<Integer> res=new Linke
阅读全文
摘要:因为服务器图片的映射路径改了,所以需要把数据库里对应图片的url统一修改。记录一下: https://www.cnblogs.com/ZHENGJUNupperclassman/p/10985455.html
阅读全文
摘要:记录一下,前端传入List<>等类型时的写法。 https://blog.csdn.net/qq_41107231/article/details/106981432?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTR
阅读全文
摘要:该题较为简单,合并排序即可。 public void merge(int[] nums1, int m, int[] nums2, int n) { List<Integer> res=new ArrayList<>(); for(int i=0;i<m;i++) res.add(nums1[i])
阅读全文
摘要:我们可以创建一个哈希表,对于每一个 x,我们首先查询哈希表中是否存在 target - x,然后将 x 插入到哈希表中,即可保证不会让 x 和自己匹配。 public int[] twoSum(int[] nums, int target) { Map<Integer,Integer> hs=new
阅读全文
摘要:动态规划:每次算出以i结尾的连续子串的最大值,之后对dp[i]进行比较就可以得到最长子串。 public int maxSubArray(int[] nums) { int [] dp=new int [nums.length]; int max=nums[0]; dp[0]=nums[0]; fo
阅读全文
摘要:法一: 简单的做法就是先排序,再遍历整个数组寻找是否有相同元素。 public boolean containsDuplicate(int[] nums) { Arrays.sort(nums); for(int i=0;i<nums.length-1;i++) { if(nums[i+1]!=nu
阅读全文
摘要:找到环的起点需要做一些不同于快慢指针的处理,我们可以在快慢指针第一次相遇后,将其中一个指针再次指向头结点,并以相同的速度使两个指针再次向前推进,再次相遇时,就是对应的环起点。 public ListNode detectCycle(ListNode head) { ListNode fast=hea
阅读全文
摘要:HTTPS=http+SSL,即在http传输上加入了SSL协议的加密能力。 在进行https连接后,所有的信息发送都是通过对称加密的方式进行的,又因为对称加密的密钥在第一次传输时需要确保足够安全,所以我们使用非对称加密对密钥进行加密后再传输。因为非对称加密和解密的耗时长,所以我们只选择密钥传输时进
阅读全文
摘要:这是一道easy题,但是思路还是有点意思,需要判断是否相交我们下意识的能想到我们需要用到双指针,但如何让两个指针能够在链表的相交位置上相遇?我们可以同时让两个指针两个链表的头结点开始遍历,如果到达了链表的尾部则跳到另一个链表的头结点,最终通过返回两个链表相同到达的节点。(如果有相交就是相交节点,如果
阅读全文
摘要:在开发的过程中,我们总无法避免不同的实体类会去实现相同的操作(增删查改,分页查询等),因此在开发时,我们期望泛型将通用的方法进行包装,使我们能够专注于实体类自身的独特方法,而非一般性常用且重复性高的方法。 泛型Base<T,V>我们通过继承jparepository<T,V >进行实现。通过jpa的
阅读全文
摘要:这是一道easy题,直接的方法可以遍历两次,先得到length再走length/2步(向上取整),如果需要一次遍历,可以使用快慢指针,当快指针到达null时,慢指针的位置就是中点。 public ListNode middleNode(ListNode head) { ListNode slow=h
阅读全文
摘要:最老的双指针经典问题了,通过快慢指针即可判断是否存在环。 public class Solution { boolean hasCycle(ListNode head) { // 快慢指针初始化指向 head ListNode slow = head, fast = head; // 快指针走到末尾
阅读全文
摘要:4.由N(N<=10000)个整数组成的数组,其中连续K(K<=200)个元素构成一个区间,称为K区间。一个K区间中所有素数的和记为Sk,请计算整个数组中,所有K区间中的最大Sk值,并输出。输入说明:第一行是两个整数N和K,第二行输入N个数,表示数组中的元素。输出说明:最大Sk值输入样例:8 212
阅读全文
摘要:1.某星球存在两种生物,A种生物有1个头6条腿,B种生物有3个头4条腿。来自地球的太空船刚刚在该星球降落,突然发现一大群这两种生物组成的队伍,由于时间紧,只数了头的数量和腿的数量,请帮助宇航员分析A、B两种生物各有多少个。输入说明:头的数量L腿的数量Z,(L,Z<=100000);输出说明:A生物的
阅读全文
摘要:这道题要求的是单次遍历,所以暴力肯定是不行了,我们可以尝试使用双指针,第一个指针P1从head开始,先走n步,再把head结点给第二个指针p2,此时两个指针相差n步,中间相差n-1个结点,同时移动两个结点,当P1到尾结点的next结点时,即P1==null时,p2即到达倒数第n个结点。因为要删除倒数
阅读全文

浙公网安备 33010602011771号