描述给定一个十进制数 M ,以及需要转换的进制数 N .将十进制数 M 转化为 N 进制数. 当 N 大于 10 以后, 应在结果中使用大写字母表示大于 10 的一位,如 'A' 表示此位为 10 , 'B' 表示此位为 11 . 若 M 为负数,应在结果中保留负号. 思路:map记录对应的值,key-value,如10-A import java.util.*; public class Solution { /** * 进制转换 * @param M int整型 给定整数 * @param…
描述给一个长度为n链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null. 答案: /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } */ public class Solution { public ListNode EntryNodeOfLoop(ListNode pHead) { ListNode fast = pHead, slow…
一.选择填空判断 2n-1 二.算法题 算法题1:配对括号 算法题2:计算有效票数? 算法题3:求字符串中指定单词的数量 package com.jhliu20.real; import java.util.HashMap; import java.util.Map; /** * 第三题:计算一个字符串中指定单词的数量 */ public class ThoughtWorks_03_findWordNum { public static void main(String[] args) { in…
一.概括 涉及JVM的GC.三色标记 并发部分的锁 Java集合中的hashmap.list kafka中ISR相关 硬件相关-有无DMA 自定义类(代码) 缺陷:锁.list 二.JVM相关内容 1.如何判断什么是垃圾 (1)方法1:有无引用指向-reference count 无法解决循环引用 (2)可达性分析/根可达算法 从根main函数上能找到的对象 2.介绍一下常见的垃圾回收算法 (1)标记-清除算法(Mark-Sweep):碎片化现象 (2)拷贝复制算法(Copying):有用的拷贝…
描述 给定一个长度为n的数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同. 子数组是连续的,比如[1,3,5,7,9]的子数组有[1,3],[3,5,7]等等,但是[1,3,7]不是子数组   数据范围:0\le arr.length \le 10^60≤arr.length≤106,0 < arr[i] \le 10^50<arr[i]≤105 要求:空间复杂度 O(n)O(n),时间复杂度 O(nlogn)O(nlogn) 方法1:双层循环,加入set,有重…
Java学习笔记:2022年1月11日 ​ 摘要:这篇笔记主要讲解了一些数据在计算机中的存在方式相关的知识点,并由此延伸出了数据在计算机中的操作以及一些数据结构的知识. @ 目录 Java学习笔记:2022年1月11日 1.数据在计算机中的存在方式 1.硬盘中的信息 1.硬盘以及硬盘的构造 2.用户眼中的硬盘存储和真实的硬盘存储 2.内存中的信息 1.内存的存储机制 2.内存在计算机系统中的地位 3.内存中的信息 2.数据结构 1.数组与链表 2.算法的复杂度 3.重要的树形结构 3.笔记原文…
Java学习笔记:2022年1月9日(其二) 摘要:这篇笔记主要记录了1月9日学习的第四章的类的基础知识,以及访问器以及访问器于多线程的意义. 目录 Java学习笔记:2022年1月9日(其二) 1.多线程 2.封装思想 3.笔记原文 1.多线程 ​ 多线程指的是在一个程序运行过程中,其内部的多个任务被同时执行,这时每个任务都会作为一个线程来执行.使用多线程的方式可以有效提升运行效率,当CPU的多线程能力很强的时候,计算机的多开能力也会得到提升,也就是说你能一次开多个QQ或者多个DNF,很多工作…
Java学习笔记:2022年1月9日(其一) 摘要:这篇笔记主要记录了Java运行时中的两种变量.以及参数的两种传递方式. 目录 Java学习笔记:2022年1月9日(其一) 1.不同变量的详细探讨 1.Java中的两种变量 2.堆区 3.变量的句柄 4.句柄和变量 5.引用地址 6.小结 2.Java中的传参 1.值传递 2.引用传递 3.总结 1.不同变量的详细探讨 1.Java中的两种变量 ​ 之前我们讨论了Java运行时中的栈区的运行机制,也就是在Java中,各种方法执行的过程,关于方法…
Java学习笔记:2022年1月7日 摘要:今天的这篇笔记主要是通过讲解基本的JVM结构来理解Java中一些行为的运行机制,进而更加的深入理解Java的运行原理. 目录 Java学习笔记:2022年1月7日 1.Java虚拟机 2.虚拟机还是运行时? 3.Java运行时 4.类和对象的关系 5.程序与进程 1.方法区 2.栈区 1.主方法入栈 2.m1()第一次被调用 3.m2的第一次调用 4.m3的第一次调用 5.m4的第一次调用 6.m5的第一次执行 7.m5出栈之后,m4重新成为栈顶 8.…
Java学习笔记:2022年1月6日(补充) ​ 摘要:这篇笔记主要记录了2022年1月6日下午的笔记,主要内容为Java语言中的基础操作,以及基础知识点,了解这些后基本上就可以使用Java写算法了. 目录 Java学习笔记:2022年1月6日(补充) 1.语句和语句块 2.循环语句 1.for循环 2.while循环 3.do while循环 3.Switch击穿问题(面试点) 4.break和continue 5.大数类型 6.数组 7.二维数组和三维数组 8.引用类型的浅拷贝和深拷贝 9.…