摘要:
思路:利用快慢指针能实现在时间复杂度为O(n)的情况下,找到第k个节点 1,快慢指针共同指向头结点 2,快指针先走k步 3,快慢指针一起走,直到快指针指向null时,慢指针所在位置就是倒数第k个节点 public static void main(String[] args) { ListNode 阅读全文
posted @ 2020-07-04 19:12
冬马党
阅读(420)
评论(0)
推荐(0)
摘要:
https://www.bilibili.com/video/BV1Zt411o7Rn?p=25 参考:这个视频借鉴的归并写法 主要逻辑在对排好后的两个数组进行归并逻辑, 就是有一个指向第一个数组的指针 i 有一个指向第二个数组的指针 j 进行比较并将小的结果放进临时数组,直到一方遍历完成为止,然后 阅读全文
posted @ 2020-07-04 15:28
冬马党
阅读(157)
评论(0)
推荐(0)
摘要:
思路:一开始想着可以通过对原数 * 10 然后对10 取余即可 但取余的代价比较高,后面改成原数 + 0.5 后转成整数,这种方式效率更高 private static void round(double n){ int num = (int) (n + 0.5); System.out.print 阅读全文
posted @ 2020-07-04 14:32
冬马党
阅读(866)
评论(0)
推荐(0)
摘要:
思路:该数和1进行与操作,得到尾数值 判断尾数是否为1,进行记录,直到右移完成 private static void oneCount(int n){ int count= 0; while (n > 0){ int end = n & 1; if(end == 1){ count++; } n 阅读全文
posted @ 2020-07-04 14:25
冬马党
阅读(139)
评论(0)
推荐(0)
摘要:
功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 ) 最后一个数后面也要有空格 思路:网上参考大佬的思路,自己怎么也想不出来 private static void shape(int n){ StringBuilder result 阅读全文
posted @ 2020-07-04 14:12
冬马党
阅读(1227)
评论(0)
推荐(0)
摘要:
题目说明 蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。 样例输入 5 样例输出 1 3 6 10 15 2 5 9 14 4 8 13 7 12 11 思路:靠总结规律,得出每次需要增加多少即可 private static void shape(int n){ int beg = 1; 阅读全文
posted @ 2020-07-04 12:39
冬马党
阅读(161)
评论(0)
推荐(0)
摘要:
思路:这题还是比较简单的,直接遍历判断即可 public static void main(String[] args) { int strCount = 0; int blankCount = 0; int numCount = 0; int otherCount = 0; Scanner sca 阅读全文
posted @ 2020-07-04 11:00
冬马党
阅读(484)
评论(0)
推荐(0)
摘要:
输出7有关数字的个数,包括7的倍数,还有包含7的数字(如17,27,37...70,71,72,73...)的个数(一组测试用例里可能有多组数据,请注意处理) 例:输入20,输出3(7,14,17) 思路:从7开始遍历数字,当这个数对7取余为0或此数包含7字符,则加入结果集 时间复杂度为O(n) p 阅读全文
posted @ 2020-07-04 09:44
冬马党
阅读(250)
评论(0)
推荐(0)
摘要:
思路:利用ASCII 的编码, 1,一次遍历得到所有字符的下标对应出现的次数 2,遍历结果,找出第一次只出现一次的字符 3,此算法的时间复杂度为O(n) package com.jpush.excel; import java.util.Scanner; public class Client { 阅读全文
posted @ 2020-07-04 09:25
冬马党
阅读(862)
评论(0)
推荐(0)

浙公网安备 33010602011771号