随笔分类 -  NC

牛客网刷题
摘要:package NC;/** * NC19 连续子数组的最大和 * 输入一个长度为n的整型数组a,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为 O(n). * * @author Tang * @date 2021/10/12 */public class F 阅读全文
posted @ 2021-10-12 15:49 六小扛把子 阅读(93) 评论(0) 推荐(0)
摘要:package NC;/** * NC88 寻找第K大 * 有一个整数数组,请你根据快速排序的思路,找出数组中第 k 大的数。 * * 给定一个整数数组 a ,同时给定它的大小n和要找的 k ,请返回第 k 大的数(包括重复的元素,不用去重),保证答案存在。 * 要求:时间复杂度 O(nlogn), 阅读全文
posted @ 2021-10-11 16:44 六小扛把子 阅读(120) 评论(0) 推荐(0)
摘要:package NC;import java.util.Stack;/** * NC17 最长回文子串 * * 对于一个字符串(仅包含小写英文字母),请设计一个高效算法,计算其中最长回文子串的长度。 * * 给定字符串 A 以及它的长度 n ,请返回最长回文子串的长度。 * * 数据范围: * 要求 阅读全文
posted @ 2021-09-30 17:23 六小扛把子 阅读(200) 评论(0) 推荐(0)
摘要:package NC;/** * NC22 合并两个有序的数组 * * 给出一个整数数组 A 和有序的整数数组 B ,请将数组 B 合并到数组 A 中,变成一个有序的升序数组 * * 数据范围: ,, * * 注意: * 1.保证 A 数组有足够的空间存放 B 数组的元素, A 和 B 中初始的元素 阅读全文
posted @ 2021-09-29 16:44 六小扛把子 阅读(98) 评论(0) 推荐(0)
摘要:package NC;import java.util.*;/** * NC119 最小的K个数 * * 给定一个长度为 n 的可能有重复值的数组,找出其中不去重的最小的 k 个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4(任意顺序皆可)。 * 数据范 阅读全文
posted @ 2021-09-29 14:04 六小扛把子 阅读(174) 评论(0) 推荐(0)
摘要:package NC;/** * NC102 在二叉树中找到两个节点的最近公共祖先 * * 给定一棵二叉树(保证非空)以及这棵树上的两个节点对应的val值 o1 和 o2,请找到 o1 和 o2 的最近公共祖先节点。 * * 要求:空间复杂度O(1) ,时间复杂度O(n) * * @author T 阅读全文
posted @ 2021-09-29 13:26 六小扛把子 阅读(59) 评论(0) 推荐(0)
摘要:package NC;import java.util.*;/** * NC41 最长无重复子数组 * * 给定一个数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同。 * 子数组是连续的,比如[1,3,5,7,9]的子数组有[1,3],[3,5,7]等等,但是[1,3 阅读全文
posted @ 2021-09-28 11:23 六小扛把子 阅读(112) 评论(0) 推荐(0)
摘要:package NC;/** * NC68 跳台阶 * * 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个 n 级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 * * 数据范围: * 要求:时间复杂度:O(N) ,空间复杂度:O(1) * * @author TANG * @ 阅读全文
posted @ 2021-09-28 10:32 六小扛把子 阅读(76) 评论(0) 推荐(0)
摘要:package NC;import java.util.*;/** * NC15 求二叉树的层序遍历 * * 给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历) * 例如: * 给定的二叉树是{3,9,20,#,#,15,7}, * * @author Tang * @date 阅读全文
posted @ 2021-09-27 13:45 六小扛把子 阅读(38) 评论(0) 推荐(0)
摘要:package NC;/** * NC105 二分查找-II * * 请实现有重复数字的升序数组的二分查找 * 给定一个 元素有序的(升序)整型数组 nums 和一个目标值 target , * 写一个函数搜索 nums 中的第一个出现的target,如果目标值存在返回下标,否则返回 -1 * * 阅读全文
posted @ 2021-09-27 11:01 六小扛把子 阅读(72) 评论(0) 推荐(0)
摘要:package NC;import java.util.*;/** * NC76 用两个栈实现队列 * * 用两个栈来实现一个队列,完成 n 次在队列尾部插入整数(push)和在队列头部删除整数(pop)的功能。 * 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。 * 要 阅读全文
posted @ 2021-09-26 20:39 六小扛把子 阅读(95) 评论(0) 推荐(0)
摘要:package NC;/** * NC4 判断链表中是否有环 * * 描述 * 判断给定的链表中是否有环。如果有环则返回true,否则返回false。 * (头尾相接为环,尾和链中任意节点相接也可以连成环) * * 数据范围:链表长度 ,链表中任意节点的值满足 * 要求:空间复杂度O(1) ,时间复 阅读全文
posted @ 2021-09-26 20:19 六小扛把子 阅读(67) 评论(0) 推荐(0)
摘要:package NC;/** * NC78 反转链表 * * 输入一个长度为n链表,反转链表后,输出新链表的表头。 * * 数据范围 * 要求:空间复杂度O(1),时间复杂度O(n) 。 * * @author Tang * @date 2021/9/24 */public class Revers 阅读全文
posted @ 2021-09-24 15:42 六小扛把子 阅读(174) 评论(0) 推荐(0)
摘要:package NC;import java.util.ArrayList;import java.util.List;import java.util.Objects;/** * NC93 设计LRU缓存结构 * * 设计LRU(最近最少使用)缓存结构,该结构在构造时确定大小,假设大小为 k,并有 阅读全文
posted @ 2021-09-24 13:30 六小扛把子 阅读(101) 评论(0) 推荐(0)