07 2022 档案

摘要:问题 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 给你一个可能存在 重复 元素值的数组 numbers ,它原来是一个升序排列的数组,并按上述情形进行了一次旋转。请返回旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一次旋转,该数组的最小 阅读全文
posted @ 2022-07-30 23:09 new_monkey 阅读(15) 评论(0) 推荐(0) 编辑
摘要:问题 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两 阅读全文
posted @ 2022-07-29 16:43 new_monkey 阅读(96) 评论(0) 推荐(0) 编辑
摘要:问题 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开头。 解决 /** * Definition for singl 阅读全文
posted @ 2022-07-27 16:11 new_monkey 阅读(50) 评论(0) 推荐(0) 编辑
摘要:问题: 从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。 解决 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode ri 阅读全文
posted @ 2022-07-23 15:40 new_monkey 阅读(35) 评论(0) 推荐(0) 编辑
摘要:问题 请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。 解决 //定义二叉树结构 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNo 阅读全文
posted @ 2022-07-21 22:54 new_monkey 阅读(26) 评论(0) 推荐(0) 编辑
摘要:问题 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。 解决 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode( 阅读全文
posted @ 2022-07-19 22:36 new_monkey 阅读(20) 评论(0) 推荐(0) 编辑
摘要:问题: 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 解决: /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode 阅读全文
posted @ 2022-07-18 22:02 new_monkey 阅读(24) 评论(0) 推荐(0) 编辑
摘要:问题 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组的前半部分,所有偶数在数组的后半部分。 解决 //1、暴力解法,一种神奇的解法 》》 class Solution { public int[] exchange(int[] nums) { //奇数:不能够被2整除;偶 阅读全文
posted @ 2022-07-17 16:14 new_monkey 阅读(31) 评论(0) 推荐(0) 编辑
摘要:问题 给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。 解决 //1.利用指示指针实现 class Solution { public ListNode deleteNode(ListNode head, int val) { //一般删除修改这类操作都 阅读全文
posted @ 2022-07-14 16:07 new_monkey 阅读(87) 评论(0) 推荐(0) 编辑
摘要:问题: 实现 pow(x, n) ,即计算 x 的 n 次幂函数(即,xn)。不得使用库函数,同时不需要考虑大数问题。 解决 //1.快速幂+递归(O(logN)/O(logN)) class Solution { public double myPow(double x, int n) { //二 阅读全文
posted @ 2022-07-13 17:02 new_monkey 阅读(92) 评论(0) 推荐(0) 编辑
摘要:问题 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3 阅读全文
posted @ 2022-07-11 20:34 new_monkey 阅读(58) 评论(0) 推荐(0) 编辑
摘要:问题 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 解决 1、动态规划 class Solution { public int numWays 阅读全文
posted @ 2022-07-10 14:28 new_monkey 阅读(637) 评论(0) 推荐(0) 编辑
摘要:问题 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead , 分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素, deleteHead 操作返回 -1 ) 解决 class CQueue { Stack<Integer> 阅读全文
posted @ 2022-07-09 19:50 new_monkey 阅读(48) 评论(0) 推荐(0) 编辑
摘要:问题 输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节点。 假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 解决 /** * Definition for a binary tree node. * public class TreeNode { * int val; * 阅读全文
posted @ 2022-07-08 20:32 new_monkey 阅读(114) 评论(0) 推荐(0) 编辑
摘要:问题 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 解决 class Solution { public String replaceSpace(String s) { //创建一个新的字符数组来储存s的每个字符 int len1=s.length(); char[] arr=new 阅读全文
posted @ 2022-07-07 16:50 new_monkey 阅读(196) 评论(0) 推荐(0) 编辑
摘要:问题 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 解决 // 1、利用栈输出 class Solution{ public int[] reversePrint(ListNode head){ Stack<ListNode> stack=new Stack<ListNode 阅读全文
posted @ 2022-07-07 16:48 new_monkey 阅读(150) 评论(0) 推荐(0) 编辑
摘要:问题 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数, 判断数组中是否含有该整数。 解决 //1、线性查找 class Solution { public boolean findNum 阅读全文
posted @ 2022-07-06 18:25 new_monkey 阅读(29) 评论(0) 推荐(0) 编辑
摘要:问题 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 解决 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode n 阅读全文
posted @ 2022-07-05 23:29 new_monkey 阅读(30) 评论(0) 推荐(0) 编辑
摘要:问题 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。 注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。 解决 //一、利用数学公式:ans=e^(1/2*logx) cla 阅读全文
posted @ 2022-07-04 10:50 new_monkey 阅读(589) 评论(0) 推荐(0) 编辑
摘要:问题 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。(理解困难~~_~~) 解决 解法一: //这里分为全是9和不是全是9,也可以分为最后一位是9,最后一位 阅读全文
posted @ 2022-07-03 18:25 new_monkey 阅读(598) 评论(0) 推荐(0) 编辑
摘要:问题 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 解决 // 将字符串划分为组成单词的小字符串 // 遇到空格就分 //返回最后一个单词长度 //反向遍历:利用倒序的方式进行查询 c 阅读全文
posted @ 2022-07-02 19:52 new_monkey 阅读(350) 评论(0) 推荐(0) 编辑
摘要:问题: 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 解决: // 贪心算法(动态规划): class Solution { public int maxSubArray(int[] nums) { // 阅读全文
posted @ 2022-07-02 19:12 new_monkey 阅读(36) 评论(0) 推荐(0) 编辑
摘要:问题 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 解决 // 排序数组 // 目标值 // 返回位置,或者被插入位置 //请必须使用时间复杂度为 O(log n) 的算法 阅读全文
posted @ 2022-07-02 14:40 new_monkey 阅读(78) 评论(0) 推荐(0) 编辑
摘要:问题 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。 解决 class Solution { public int strStr(String haystack, S 阅读全文
posted @ 2022-07-01 21:59 new_monkey 阅读(111) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示