题解 不用修改原始链表(做题不要太死板,不一定非要在原始链表上进行修改) 新建两个链表before和after 在遍历原始链表的过程中,小于x的插入到before中,大于x的插入到after中 public ListNode partition(ListNode head, int x) { Lis ...
分类:
其他好文 时间:
2020-06-04 19:40:42
阅读次数:
51
自动垃圾收集器 自动垃圾收集器是查看堆内存,识别正在使用那些对象以及那些对象未被删除以及删除未使用对象的过程。 使用中的对象或引用的对象意味着程序的某些部分仍然维护指向对象的指针。 程序的任何部分都不再引用未使用的对象或者引用的对象,因此可以回收未引用对象使用的内存。 像C这样的编程语言中,分配和释 ...
分类:
其他好文 时间:
2020-06-04 15:42:16
阅读次数:
92
链表的一个结点的结构体如下: type LNode struct { value int next *LNode } 对于一个单链表,如果他要存在环,那么至少存在两个节点,也就是说最后一个结点的next指向了前面的某个结点。 所以在判断链表是否存在环的时候,我们添加快慢两个指针fast和slow,f ...
分类:
其他好文 时间:
2020-06-04 13:36:46
阅读次数:
69
Java8 Optional 一句话介绍Optional类:使用JDK8的Optional类防止NullPointerException(空指针异常)问题 一、前言 在我们开发的过程中,碰到的异常中NullPointerException必然是排行第一的,所以在平时编码中,我们会时时的判断null ...
分类:
编程语言 时间:
2020-06-04 12:00:50
阅读次数:
72
java基础学习 (一)Java基础 1.1Java 语言特点 1.面向对象(封装,继承,多态) 2.平台无关性(Java虚拟机实现平台无关性,一次编译,到处运行) 3.简单易学(Java的面向对象更接近人的语言习惯) 4.安全性,可靠性(java中没有指针,程序员无法直接操作内存,把操作权限交给j ...
分类:
编程语言 时间:
2020-06-04 01:08:34
阅读次数:
87
双指针 解题思路:算法流程: 设定 i,j 两指针分别指向 num1,num2 尾部,模拟人工加法; 计算进位: 计算 carry = tmp // 10,代表当前位相加是否产生进位;添加当前位: 计算 tmp = n1 + n2 + carry,并将当前位 tmp % 10 添加至 res 头部; ...
分类:
其他好文 时间:
2020-06-04 00:56:08
阅读次数:
72
在开发中,我们调用一个方法得到了一个对象返回值,却不能直接取对象返回值的属性。我们首先要判断这个对象返回值是否为null,只有在非空的前提下才能获取其属性值,不然直接取容易出现空指针异常。 而Java 8引入了一个新的Optional类。 Option<T>类(java.util.Optional) ...
分类:
编程语言 时间:
2020-06-03 23:23:54
阅读次数:
72
C 语言的设计者把内存简单粗暴地想象成一个巨大的字节(Byte)数组。事实上,它被更加合理地划分成了两部分,即栈和堆。实际上,它们只是内存中的两块不同的区域,分别用来完成不同的任务而已。 栈栈是程序赖以生存的地方,所有的临时变量和数据结构都保存于其中,供你读取及编辑。每次调用一个新的函数,就会有一块 ...
分类:
编程语言 时间:
2020-06-03 21:57:32
阅读次数:
87
1.DOM动态添加删除表格内容所使用到的常用方法: insertRow(index):在指定索引位置插入一行。 createCaption():为该表格创建标题。 deleteRow(index):删除表格中index索引处的行。 deleteCaption():删除表格标题。 给表格行创建、删除单 ...
分类:
Web程序 时间:
2020-06-03 20:21:47
阅读次数:
102
Q:请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true A: 1.reverse以后对比。 因为这里是递归reverse,所以之前要先复制一个原链表。 public boolean isPalindrome(L ...
分类:
其他好文 时间:
2020-06-03 16:05:25
阅读次数:
53