- 博客(19)
- 收藏
- 关注
原创 leetcode刷题笔记:讯在峰值
啥也不说了,就是一个二分法;找中间值,然后先判断mid和mid+1的大小,mid<mid+1递归search(nums,mid+1,r);反之亦然。public class Solution { public int findPeakElement(int[] nums) { return search(nums,0,nums.length-1); } private int search(int[] nums,int l,int r){
2020-06-17 17:07:39
127
原创 linux学习笔记2020616:软件包管理,校检和文件管理
linux中能识别的两种包:源码包(c语言),二进制包(rpm,系统安装包)现在基本安装这个。一般用二进制包,因为不用像源码包那样去编译。rpm包管理在这里插入图片描述但是用rpm命令超级麻烦,因为安装会有很多个依赖所以就用yum命令rpm的查询是一个非常常用的方法!这个rpm查询不一定要进入安装依赖的路径,在任何位置依然可以查询已安装的依赖或者包也可以在rpm -qa后面加一个管道符| 查询包含有httpd字符的包重点:安装和升级不能用包名,而是要用包全名!注意:查询属
2020-06-16 13:21:20
178
原创 linux学习笔记2020615,vim指令
vi+文件名 创建一个文件2.命令模式加一个冒号,就可以进入编辑模式,2. :q 退出文件二,用的最多是命令模式的常用命令,和编辑模式的常用命令删除字符,和删除行用的最多曾经使用了两年多的Vim,手册也翻过一遍。虽然现在不怎么用vim了,曾经的笔记还是贴出来,与喜欢vim的朋友分享。关于Vimvim是我最喜欢的编辑器,也是linux下第二强大的编辑器。 虽然emacs是公认的世界第一,我认为使用emacs并没有使用vi进行编辑来得高效。 如果是初学vi,运行一下vimtuto..
2020-06-15 16:29:28
270
原创 leetcode刷题笔记,和为 K 的最少斐波那契数字数目
class Solution {public int findMinFibonacciNumbers(int k) {List list = new ArrayList<>();list.add(1);list.add(1);int tmp = 0, res = 0;while (tmp <= k){int size = list.size();tmp = list.get(size - 1) + list.get(size - 2);list.add(tmp);}.
2020-06-15 12:01:00
156
原创 linux学习20206-14-03用户管理基本命令,压缩解压命令,网络命令,关机重启命令
用户管理命令:1.useradd2.passwd x修改用户密码3.用户可以更改自己的密码,root可以更改任何的密码4. who 查看用户登陆信息(w和who效果差不多二,用户压缩命令rm -rf * 删除当前目录下的所有文件使用方法:压缩文件:gzip + 文件名解压文件: gunzip或(gzip -d) +文件名gzip只能压缩文件不能压缩目录!且压缩完不保存源文件压缩目录打包命令:tar格式:tar -cvf 【打包后的文件名】 【被打包的源文件名】
2020-06-14 23:06:34
130
原创 linux学习202061402帮助命令,查找自己不认识的命令
帮助命令man +命令名称 查看命令的的帮助文档可以在文当中编写/-l 查找-l处的内容如果要查找配置文件直接 man +配置文件名称如 man services 而不需要写文件的绝对路径在linux中1表示命令的帮助,5表示配置文件的帮助,如果passwd既对应一个命令文件又对应一个配置文件,那优先查找命令文件如果要查找配置文件,就需要给系统声明一下例如这两个命令可以代替man最简单的就是使用whatis +命令查看命令的最基本信息例如:whatis lsap
2020-06-14 20:09:04
123
原创 linux 学习笔记2020614查找命令
在linux中以#号开始的行 代表注释或脚本的注释find /目录 +size 100 -a -size 660 查找文件大小在100k到600k之间的文件(比较靠谱,但负载较高)locate +文件名 可以找到文件所在的位置(在一个资料库里查找)但tmp文件不会被包含updatedb,当你创建一个新文件以后,你只有通过updatedb之后,才能使用locate查找文件所在位置which +命令名 查找命令所在的目录whereis +命令名 查找命令所在的目录以及帮助文档所在的位置
2020-06-14 19:18:31
99
原创 leetcode刷题笔记,缺失第一个正数
采用bitmap算法1、根据题目要求,最终结果肯定是1至n+1中的一个数;2、处理特殊情况,数组中没有1,数组长度为1;3、把小于1和大于n的不符合规范的转化为1;4、根据数组的值,把值对应的下标的数标记为负数;5、最后循环判断值的正负。class Solution { public int firstMissingPositive(int[] nums) { //处理数组长度为1的特殊情况 if (nums.length == 1) { .
2020-06-14 16:20:39
151
原创 linux学习笔记,20206131
学习linux的注意事项:linux严格区分大小写;linux所有内容都是以文件形式保存的;所有硬盘文件都再/dev目录下;光盘文件/dev/sr0;无论改变什么 ,都要写在文件里才生效,命令行执行改变都是临时的;linux不靠扩展名,区分文件类型。例如:压缩包:“.gz" , “.bz2.” “tar.baz2”;二进制文件软件包” “.rpm等8.linux所有的存储设备都必须挂在之后用户才能使用,包括硬盘,优盘和光盘9.windows下的程序不能直接再linux中安装和运行。
2020-06-13 16:53:25
78
原创 leetcode刷题笔记,0~n-1中缺失的数字
题目描述:二分法,根据对应索引,判断分解class Solution{ public int missingNumber(int nums[]){ int i = 0; int j=nums.length; while(i<=j){ int m = (i+j)/2; if(nums[m]==m) i= m+1; else j= m-1; } return i;}...
2020-06-11 20:01:36
152
原创 leetcode刷题笔记,高度检查器
class Solution { public int heightChecker(int[] heights) { //设置一个桶数组arr长度为101 int[] arr = new int[101]; for(int height:heights){//增强for循环,可理解为遍历heights中的数值,height从0开始计数 arr[height]++; } int count= 0;
2020-06-08 20:41:10
202
原创 leetcode刷题笔记,递减元素使数组呈锯齿状
代码引自leetcode题解库,我算是一个新手,先看懂代码为主。代码作者:slowbirdclass Solution { public int movesToMakeZigzag(int[] nums) { if (null == nums || nums.length == 0) return -1; if (nums.length == 1) return 0; // gap 表示当前元素与相邻元素的差值 /
2020-06-05 18:00:37
142
原创 leetcode刷题笔记:井字游戏
代码转自leetcode官方题库,作者:a_good_startclass Solution { public String tictactoe(String[] board) { boolean fill = true;//判断是否填满 boolean duijiao1 = board[0].charAt(0) == ' '?false:true; boolean duijiao2 = board[0].charAt(board.length -
2020-06-04 22:35:06
468
原创 leetcode刷题笔记,大小为 K 且平均值大于等于阈值的子数组数目
class Solution {public static int numOfSubarrays(int[] arr, int k, int threshold) { int sum = 0 ,account=0; int sumTarget = k*threshold; for (int i = 0; i < k; i++) { sum += arr[i]; } int adder = sum.
2020-06-04 18:27:49
208
原创 leetcode刷题笔记,将连续数组转换为平衡二叉树
该代码转自leetcode官方;首先,TreeNode结构为:public class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int x) { val = x; }}看了半天,终于把它看懂了,首先生成的结果这是这个算法的答案。根据答案构建二叉树:由答案给出的顺序根据算法可以得出,递归更深层次的含义:1.首先第一个结果为0,毫无疑问,由下面的代码得出:int p= (left+right)/2TreeNode
2020-06-02 18:07:10
230
转载 Linux基础知识必备
声明:本文转自Github,原文地址:https://github.com/Snailclimb/JavaGuide 常见目录说明:/bin: 存放二进制可执行文件(ls、cat、mkdir等),常用命令一般都在这里; /etc: 存放系统管理和配置文件; /hom...
2020-05-31 12:55:06
146
原创 leetcode刷题笔记,最大连续子数组之和
思路:max和now都指向数组的第一个元素,然后通过for循环依次更新max的值,now记录之前值累加和。然后now每加一次更新值以后就和max相比较,当now>max时,用now值更新max,若now<max,则max保持不变。循环结束,max就为最大子序和。...
2020-05-30 21:16:08
115
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人