LeetCode
Sweet__Candy
这个作者很懒,什么都没留下…
展开
-
二进制运算
一、原码、反码、补码原码:最高位为符号位,0代表正数,1代表负数,非符号位为该数字绝对值的二进制表示。反码:正数的反码与原码一致;负数的反码是对原码按位取反,只是最高位(符号位)不变。补码:正数的补码与原码一致;负数的补码是该数的反码加1。二、左移运算符 <<将一个运算对象的各二进制位全部左移若干位(左边的二进制丢弃,右边补0)对于正数来说,左移一位对相当于乘2,效率比乘法高三、右移运算符 >>将一个运算对象的各二进制位全部右移若干位,正数左补0,负.原创 2021-03-22 09:52:47 · 141 阅读 · 0 评论 -
String、StringBuilder、StringBuffer的区别
LeetCode写题get到的新知识请实现一个函数,把字符串s中的每个空格替换成"%20"。输入:s = "We are happy."输出:"We%20are%20happy."public class offer05 { public static void main(String[] args) { Scanner in = new Scanner(System.in); String str = in.nextLine(); ..原创 2020-11-03 20:36:21 · 108 阅读 · 0 评论 -
在排序数组中查找元素的第一个和最后一个位置
给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是O(log n) 级别。如果数组中不存在目标值,返回[-1, -1]。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: [3,4]示例2:输入: nums = [5,7,7,8,8,10], target = 6输出: [-1,-1]二分查找可以满足题目中的时间复杂度要求。用二分查找方法分别...原创 2020-08-08 11:00:13 · 153 阅读 · 0 评论 -
三数之和
题目给你一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例1:nums = [-1, 0, 1, 2, -1, -4],输出 [[-1, 0, 1], [-1, -1, 2]]示例2:nums=[0, 0, 0],输出 [[0,0,0]]示例3:nums=[-2, 0, 0, 2, 2],输出 [[-2, 0, 2]]使用二分法查...原创 2020-08-05 10:42:01 · 102 阅读 · 0 评论 -
最大连续子序和
给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。public static int maxSubArray(int[] nums) { int maxSum = nums[0]; int thisSum = nums[0]; for(int i = 1; i &...原创 2020-08-02 15:58:30 · 95 阅读 · 0 评论 -
167. 两数之和 II - 输入有序数组
给定一个已按照升序排列的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1必须小于index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 11, 15], t...原创 2019-08-16 16:38:43 · 91 阅读 · 0 评论