自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 指 Offer 20. 表示数值的字符串

剑指 Offer 20. 表示数值的字符串请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100"、“5e2”、"-123"、“3.1416”、"-1E-16"、“0123"都表示数值,但"12e”、“1a3.14”、“1.2.3”、"±5"及"12e+5.4"都不是自己暴力解决了: public boolean isNumber(String s) { int i=0; int len=s.length(); int A=0,B=0; System.

2020-12-18 11:13:46 101

原创 217. 存在重复元素

给定一个整数数组,判断是否存在重复元素。如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。和剑指offer那题还是不同的,那题限制了范围,这题没有 public boolean containsDuplicate(int[] nums) { HashMap<Integer,Integer> res=new HashMap<Integer,Integer>(); for(int num:nums) { r

2020-12-13 14:43:34 76 1

原创 剑指 Offer 09. 用两个栈实现队列

用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )这题的表现形式有点奇怪 Stack<Integer> s1; Stack<Integer> s2; public CQueue() { s1=new Stack<Integer>(); s2=new Stack&l

2020-12-12 18:24:40 112

原创 剑指8.二叉树的下一个节点

public TreeNode nextNode(TreeNode root, TreeNode one) { if(one.right!=null) { TreeNode p=one.right; while(p.left!=null) { p=p.left; } return p; } else { //如这个节点没有右子树 if(one.father.left==one) { //如果他是左孩子 return one.fathe.

2020-12-12 17:50:15 76

原创 842. 将数组拆分成斐波那契序列

给定一个数字字符串 S,比如 S = “123456579”,我们可以将它分成斐波那契式的序列 [123, 456, 579]。形式上,斐波那契式序列是一个非负整数列表 F,且满足:0 <= F[i] <= 2^31 - 1,(也就是说,每个整数都符合 32 位有符号整数类型);F.length >= 3;对于所有的0 <= i < F.length - 2,都有 F[i] + F[i+1] = F[i+2] 成立。另外,请注意,将字符串拆分成小块时,每个块的数字一定

2020-12-08 11:05:13 93

原创 861. 翻转矩阵后的得分

有一个二维矩阵 A 其中每个元素的值为 0 或 1 。移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 0 都更改为 1,将所有 1 都更改为 0。在做出任意次数的移动后,将该矩阵的每一行都按照二进制数来解释,矩阵的得分就是这些数字的总和。返回尽可能高的分数。1.我看了一遍解题分析写的:public int matrixScore(int[][] A) { for(int i=0;i<A.length;i++) {//有多少行 if(A[i][0]==0) { t

2020-12-07 11:03:38 69

原创 659. 分割数组为连续子序列

分割数组为连续子序列给你一个按升序排序的整数数组 num(可能包含重复数字),请你将它们分割成一个或多个子序列,其中每个子序列都由连续整数组成且长度至少为 3 。1.哈希表+最小堆 public boolean isPossible(int[] nums) { Map<Integer,PriorityQueue<Integer>>map=new HashMap<Integer,PriorityQueue<Integer>>(); //哈希表的.

2020-12-04 13:03:00 122

原创 204. 计数质数

统计所有小于非负整数 n 的质数的数量。我自己写的暴力循环: public int countPrimes(int n) { int count=0; for(int i=2;i<n;i++) {//0和1特别关注,他们不是质数 if(iszhi(i)) { count++; } } return count; } public static Boolean iszhi(int num) { int count=0; for(int k=

2020-12-03 12:09:38 69

原创 VSCode汉语包插件安装失败

反正失败,让手动下载,但是把插件下载好后,“install from vsix”也显示错误,说不适配我的VSCode版本。有试过解压缩后,改插件文件的内容,但是最后还是说找不到。其实根本原因是版本不批配。自动下载的插件版本比VSCode的还高。我的VSCode是1.51.1,但是中文插件是1.52.0.歪打正着的:https://marketplace.visualstudio.com/_apis/public/gallery/publishers/MS-CEINTL/vsextensions/vs

2020-12-02 14:19:17 4673 1

原创 34. 在排序数组中查找元素的第一个和最后一个位置

在排序数组中查找元素的第一个和最后一个位置给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗? public int[] searchRange(int[] nums, int target) { int local=reseach(nums,target); if(local==-1).

2020-12-01 13:41:28 61

原创 767. 重构字符串

给定一个字符串S,检查是否能重新排布其中的字母,使得两相邻的字符不同。若可行,输出任意可行的结果。若不可行,返回空字符串。 public String reorganizeString(String S) { if(S.length()<2) { return S; } int[]counts=new int[26]; int maxCount=0; int length=S.length(); for(int i=0;i<length;i++) {

2020-11-30 11:02:52 61

原创 1370. 上升下降字符串

上升下降字符串给你一个字符串 s ,请你根据下面的算法重新构造字符串:从 s 中选出 最小 的字符,将它 接在 结果字符串的后面。从 s 剩余字符中选出 最小 的字符,且该字符比上一个添加的字符大,将它 接在 结果字符串后面。重复步骤 2 ,直到你没法从 s 中选择字符。从 s 中选出 最大 的字符,将它 接在 结果字符串的后面。从 s 剩余字符中选出 最大 的字符,且该字符比上一个添加的字符小,将它 接在 结果字符串后面。重复步骤 5 ,直到你没法从 s 中选择字符。重复步骤 1 到 .

2020-11-30 10:48:46 71

原创 454. 四数相加 II

四数相加 II给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有整数的范围在 -228 到 228 - 1 之间,最终结果不会超过 231 - 1 。public int fourSumCount(int[] A, int[] B, int[] C, int[] D) { .

2020-11-27 14:32:00 88

原创 3. 无重复字符的最长子串

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 public int lengthOfLongestSubstring(String s) { HashSet<Character> occ=new HashSet<Character>();//哈希集和 int n=s.length(); int tail=0,res=0; for(int i=0;i<n;i++) { if(i!=0) {//改变哈希表,左指针往右走

2020-11-26 12:45:57 71

原创 Python问题

在做书185的题目时发现的,下面是类似于183页的代码当文件中有信息时程序无误但当文件为空时就会出错import jsonfilename='text.txt'try: with open(filename) as obj: username=json.load(obj)except FileNotFoundError: username=input('please write...

2019-09-20 10:06:29 108

原创 Leetcode做题记录(Python)

1.两数之和我的代码:class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: result=[] for num1 in nums: if target-num1 in nums[nums.index(num1)...

2019-09-16 13:32:07 263

原创 Python学习问题记录(一)

Python学习问题记录(一)代码:flag=Truedef greet():name=input(‘whar u name?’)if name==‘q’:flag=Falseelse:print('hello '+name)while flag:greet()结果:输入q也不停止循环提问:是否是因为全局变量等问题?...

2019-09-05 09:55:21 107

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除