约瑟夫环 题目: 剑指 Offer 62. 圆圈中最后剩下的数字 5727. 找出游戏的获胜者 1、数学解法就是通过倒推,求出队伍长度为n时,(n=1)的下标会变成什么。 class Solution { public int lastRemaining(int n, int m) { int an ...
分类:
其他好文 时间:
2021-04-12 12:42:41
阅读次数:
0
剑指 Offer 14- II. 剪绳子 II 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m - 1] 。请问 k[0]*k[1]*...*k[m - 1] 可能的最大乘积是多少?例如,当绳子的长度 ...
分类:
其他好文 时间:
2021-04-12 12:31:21
阅读次数:
0
题目: 输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回 true 。示例 2: 给定二叉树 [1,2 ...
分类:
其他好文 时间:
2021-04-12 12:06:54
阅读次数:
0
题目: 输入两个链表,找出它们的第一个公共节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3 输出:Referen ...
分类:
其他好文 时间:
2021-04-12 11:43:41
阅读次数:
0
234. 回文链表 题目描述: ? 请判断一个链表是否为回文链表。 # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next = None im ...
分类:
其他好文 时间:
2021-04-09 13:34:58
阅读次数:
0
本文简单记录一下关于Queue接口中几种类似方法的区别: add() 和 offer() add() : 添加元素,如果添加成功则返回true,如果队列是满的,则抛出异常 offer() : 添加元素,如果添加成功则返回true,如果队列是满的,则返回false 区别:对于一些有容量限制的队列,当队 ...
分类:
编程语言 时间:
2021-04-09 12:57:32
阅读次数:
0
题解 直接遍历一遍数组,如果遇到重复的数字直接返回就可以了,如果不存在返回-1,只需要在遍历的过程中使用一个集合存储我们遇到过的数字,方便后续判定 代码如下 class Solution { public int findRepeatNumber(int[] nums) { Set<Integer> ...
分类:
编程语言 时间:
2021-04-07 11:02:18
阅读次数:
0
描述 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。 public ListNode mergeTwoLists(ListNode l1, ListNode l2) { //设置虚拟头结点 ListNode res = new ListNode(-1); ListNode ...
分类:
编程语言 时间:
2021-04-07 10:34:17
阅读次数:
0
仅供自己学习 思路: 需要定义两个栈st1,st2.第一次调用CQueue()时,可以用于清空两个栈。加入元素的函数直接加入进st1即可,对于删除函数,要先判断st2是否为空,如果不为空直接从st2弹出元素,如果为空就从st1一直加元素直到st1为空,如果st1为空,st2没有元素加进去,那么就返回 ...
分类:
其他好文 时间:
2021-04-06 15:09:29
阅读次数:
0
仅供自己学习 思路: 按照题目要求我们需要定义一个head头节点,并且因为树是二叉搜索树,所以要采取中序遍历才能得到从小到大的排序。 按照中序遍历的模板 dfs(root->left); cout<<root->val; dfs(root->right); 同样我们也通过这个模板写DFS,这里因为是 ...
分类:
其他好文 时间:
2021-04-05 12:33:29
阅读次数:
0