摘要:
一、递归方式遍历 递归方法完成二叉树的遍历,每一个节点都能回去3次(虽然某一次回去的时候什么也没干) 在递归序的基础上,选择打印的时机不同可演变出前序、中序、后续三种遍历方式 前序-打印递归遍历时第1次出现的数字(头左右):1,2,4,5,3,6,7 中序-打印递归遍历时第2次出现的数字(左头右): 阅读全文
摘要:
【题目】给定两个可能有环也可能无环的单链表,头节点head1和head2。请实现一个函数,如果两个链表相交,请返回相交的第一个节点。如果不相交,返回null 【要求】如果两个链表长度之和为N,时间复杂度请达到0(N),额外空间复杂度请达到0(1)。 一、先判断一个单链表是否有环 1、哈希表,往哈希表 阅读全文
摘要:
【题目】一种特殊的单链表节点类描述如下 class Node{ int value; Node next; Node rand; Node(int val){ value = val; } } rand指针是单链表节点结构中新增的指针,rand可能指向链表中的任意一个节点,也可能指向null。给定一 阅读全文
摘要:
【题目】给定一个单链表的头节点head,节点的值类型是整型,再给定一个整数pivot。实现一个调整链表的函数,将链表调整为左部分都是值小于pivot的节点,中间部分都是值等于pivot的节点,右部分都是值大于pivot的节点。 笔试:构建一个Node型数组,将单链表中的节点添加进数组中,在数组中进行 阅读全文
摘要:
题目:给一个数组arr=[2,7,9,3,1,8,5,2,5] 给定数字5,把数组中的数按照<5,=5,>5进行排列 >arr=[2,2,3,1, 5,5, 8,9,7] 代码: package Algorithms; /** * @author : zhang * @version : 1.0 * 阅读全文
摘要:
代码: package Algorithms; public class PrintCommonPart { public static class Node { public int value; public Node next; public Node(int data) { this.val 阅读全文
摘要:
判断一个数是否回文数 【题目】给定一个单链表的头节点head,请判断该链表是否为回文结构。 【例子】1->2->1,返回true;1->2->2->1,返回true;15->6->15,返回true;1->2->3,返回false。 【例子】如果链表长度为N,时间复杂度达到0(N),额外空间复杂度达 阅读全文
摘要:
力扣 package Algorithms; /** * @author : zhang * @version : 1.0 * @date : Create in 2021/8/1 * @description : */ public class RemoveDuplicates { public 阅读全文