自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode 386字典序排数

leetcode 386字典序排数这是一道据说是字节的面试题leetcode440题的前缀题,题目的内容都是从1-n所有的数的按字典序的排序,字典序的排序和平时一般的数值大小的排序不容易转过弯来,其实很简单,字典序的小就是前缀小,遍历完一个数以后,还要用这个数一直乘以10(如果还在n的范围内)去遍历,直到遍历到 %10==9,把他除以10向下取整以后继续遍历。class Solution {public: vector<int> lexicalOrder(int n) {

2022-04-18 22:20:11 70

转载 arrayList和vector的区别

arrayList和vector的区别首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别如下: ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力,就要讲已经有数组的数据复制到新的存储空间中。当从Array...

2022-04-15 17:26:12 7394

原创 leetcode16最接近的三数之和

这是一道和三数之和很接近的一道题目,三数之和为了找到三个数,三重循环的做法会超时,一般的做法是,排序,然后枚举第一个数,再用双指针去找第二第三个数,三数之和那道题找到了就行,但是这道题是最接近于target的数,所以这道题要要遍历完,维护一个和target最小的差值的绝对值,以及这个值,所以用了一个pair的优先队列,其实维护两个变量就可以了,可以优化一下。class Solution {public: int threeSumClosest(vector<int>& num

2022-04-14 16:54:27 642

原创 二分不迷茫

最简单的二分最近在很多题里要自己实现二分,二分的边界条件,与判断语句里等号的取舍,L和R与mid之间的±1的取舍都很多,每个地方差一点就是一个不同的二分,在太多的复杂情况下,其实只要抓住stl二分的源码也就是*lower_bound()和 upper_boudn()*就能做到不出错。以下是对两个函数的实现int lower_bound(vector<int>&nums,int targrt){ int l=0,r=nums.size()-1; while(l<r)

2022-04-14 16:03:21 79

原创 leetcode随机一题667优美的排列

leetcode随机一题667优美的排列给你两个整数 n 和 k ,请你构造一个答案列表 answer ,该列表应当包含从 1 到 n 的 n 个不同正整数,并同时满足下述条件:假设该列表是 answer = [a1, a2, a3, … , an] ,那么列表 [|a1 - a2|, |a2 - a3|, |a3 - a4|, … , |an-1 - an|] 中应该有且仅有 k 个不同整数。返回列表 answer 。如果存在多种答案,只需返回其中 任意一种 。题意很清楚,给了1到n,n个数,返回

2022-04-14 14:37:00 144

原创 【无标题】

leetcode随机一题526数据范围n<=15,最大是15!,回溯法可以做,从左到右直接枚举1-n中的某个数能不能放在这里。class Solution {public:int ans=0; int countArrangement(int n) { vector<bool>vis(20); backtrack(vis, n, 1); return ans; } void backtrack(vector

2022-04-13 23:52:46 39

转载 【无标题】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、comparator接口一、comparator接口今天来给大家介绍下java.utils包下的Comparator接口。该接口代表一个比较器,java数组工具类和集合工具类中提供对sort方法排序就是使用 Comparator接口来处理排序的。 Comparator接口中有一个方法int compare(T o1, To2)。这个方法返回值是int类型,如果返回值小于0,说明比较结果是o1<o2,如.

2022-04-13 21:20:24 48

转载 【无标题】

leetcode每日一题380核心思想:哈希表记录加入和删除的数,可以O(1)检查是否出现过用数组维护所有数,方便随机取一个数,数组后加入一个数也是O(1),唯一难点在于删除。用哈希表维护每个数加入时的坐标,在要删除的数不是数组最后一个时,与最后一个交换(因为是不在乎顺序的,所以这种交换不影响任何东西),此时要删除的数成为数组最后一个,可以O(1)删除class RandomizedSet { private List<Integer> nums; private M

2022-04-13 15:44:58 33

转载 java中euqals和==的异同

java中的数据类型,可分为两类:1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==),比较的是他们的值。2.引用数据类型(类) 当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的比较后的结果为true,否则比较后结果为false。JAVA当中所有的类都是继承于Object这个基类的,在Object中的基类中定义了一个equals...

2022-04-12 22:10:42 112

空空如也

空空如也

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

TA关注的人

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