![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
每日编程题
不想秃头Q-Q
这个作者很懒,什么都没留下…
展开
-
【每日编程11】两数相加
题目1: 两数相加class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode pre = new ListNode(0); ListNode cur = pre; int c = 0;//表示进位 while(l1 != null || l2 != null){ int x = l1 == null原创 2022-02-22 17:56:59 · 658 阅读 · 0 评论 -
【每日编程10】从链表中删去总和值为零的连续节点
题目1: 从链表中删去总和值为零的连续节点解题思路:定义一个值为 0 的虚拟头节点,当做原链表新的头节点,dummy.next = head;定义一个 pre 指针指向虚拟头节点作为原链表头节点的前驱节点(方便进行删除操作)。定义一个指针 p 指向 pre 指向节点的后一个节点(开始时,p 指向原链表的头节点);然后 p 指针开始遍历链表,每遍历一个节点就将该节点值与之前节点值总和进行相加得到新的 sum:若 sum == 0,则需要进行删除(将 pre 指针和 p 指针指向节点(包括 p 指针原创 2022-01-26 20:10:05 · 544 阅读 · 0 评论 -
【每日编程09】移除重复节点和打印链表
题目1: 移除重复节点class Solution { public ListNode removeDuplicateNodes(ListNode head) { ListNode pre = null, cur = head; HashSet<Integer> set = new HashSet<>(); while(cur != null){ if(set.contains(cur.val))原创 2022-01-25 19:22:18 · 265 阅读 · 0 评论 -
【每日编程08】拼写单词和一年中的第几天(计算日期到天数转换)
题目1: 拼写单词解题思路:使用哈希表存储chars中每个字母的数量再使用一个哈希表存储word中每个字母的数量将这两个哈希表的键值对逐一进行比较//先来一个比较通俗易懂的代码class Solution{ public int countCharacters(String[] words, String chars){ Map<Character, Integer> charsMap = new HashMap<>();原创 2022-01-24 21:55:17 · 251 阅读 · 0 评论 -
【每日编程07】面试题01.02 判定是否互为字符重排--getOrDefault()方法的使用
题目1: 判定是否互为字符重排解题思路:借助哈希表统计字符串中各字符的数量key: 字符value: 数量s1各字符执行 + 1, s2各字符执行 - 1, 如果最终哈希表中所有字符统计数值都为0, 那么这两个字符串互为字符重排class Solution { public boolean CheckPermutation(String s1, String s2) { int len1 = s1.length(), len2 = s2.length();原创 2022-01-23 20:24:16 · 1037 阅读 · 0 评论 -
【每日编程06】二分法
关于二分法小知识题目1:搜索插入位置class Solution { public int searchInsert(int[] nums, int target) { int left = 0, right = nums.length - 1; while(left <= right){ int mid = left + (right - left) / 2; if(nums[mid] == targe.原创 2022-01-22 18:01:50 · 441 阅读 · 0 评论 -
【每日编程05】快乐到现在困得要死结束
题目1: 各位相加class Solution { public int addDigits(int num) { while(num >= 10){ int next = 0; while(num != 0){ next = next + num % 10; num /= 10; } num = next;原创 2022-01-17 23:00:11 · 145 阅读 · 0 评论 -
【每日编程04】今天你快乐吗
今天你快乐了吗 之 快乐数与丑数诶嘿我反正很快乐~城市和高校封了二十几天后终于解封, 明天就阔以回家咯~题目1: 快乐数解题思路1:快慢指针: 此处的快慢指针指的是, 快指针走两步, 慢指针走一步, 有环快慢指针就会相遇把转换过程中的每一个数看做单链表的一个节点, 将1看作单链表的最后一个元素, 如果无法从 n 转换为1, 说明单链表中存在环, 即该数就不是快乐数1.初始化两个数slowRunner和fastRunner为n2.当slowRunner不等于fastRunner,原创 2022-01-16 17:43:45 · 229 阅读 · 0 评论 -
【每日编程03】移除元素和罗马数字转整数
题目1: 移除元素解题思路1:1.创建一个变量index, 指向待插入位置2.遍历数组, 当前元素与移除元素val相同, 则跳过该元素3.若是当前元素与移除元素val不同, 则将该元素放到下标index的位置, 并且 index++4.返回indexclass Solution { public int removeElement(int[] nums, int val) { int index = 0; for(int x : nums){原创 2022-01-15 18:36:14 · 123 阅读 · 0 评论 -
【每日编程02】截断句子和删除重复元素
题目1: 截断句子相似题目: 替换空格class Solution { public String truncateSentence(String s, int k) { StringBuilder res = new StringBuilder(); for(char c : s.toCharArray()){ if(c == ' ' && --k == 0){ break;原创 2022-01-14 17:30:31 · 222 阅读 · 1 评论 -
【每日编程01】判断回文字符串和求平方根
题目1: 判断是否为回文字符串解题思路①:重新构建一个字符串str2将str2反转, 与原来的字符串对比是否相同import java.util.*;public class Solution { public boolean judge (String str) { StringBuilder str1 = new StringBuilder(str); String str2 = str1.reverse().toString();原创 2022-01-13 17:35:02 · 236 阅读 · 0 评论