自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 kill -INT kill -9

kill -INT $pid将“中断”信号发送到具有进程ID的进程pid。然而,该过程可以决定忽略该信号,或者在退出和/或忽略它之前捕获信号并做某事。kill -9 $pid发送无法捕获或忽略的“kill”信号。该过程将被强制关闭,不会通知该过程,也没有机会进行任何清理。kill -9 $pid几乎不应该被推荐或使用,尽管有时候是必要的。...

2019-04-22 10:44:05 2187

原创 多线程交替输出

多线程交替输出A:1 B:1A:2B:2A:3B:3package com.chan;public class practise { private static Integer count=1; private static int choice=0; private static int limit=4; public static void ...

2019-04-22 10:24:03 681

原创 LeetCode----寻找数组的中心索引

题目给定一个整数类型的数组nums,请编写一个能够返回数组“中心索引”的方法。我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例 1:输入: nums = [1, 7, 3, 6, 5, 6]输出: 3解释: 索引3...

2019-04-03 21:33:45 154

原创 用LinkedHashMap实现LRU缓存

package com.chan;import java.util.LinkedHashMap;import java.util.Map;public class LRUcache { static class LRUCache<K,V> extends LinkedHashMap<K,V>{ private static final i...

2019-04-03 20:34:24 176

转载 java8新特性(转载)

java8新特性(转载)http://www.importnew.com/19345.html未经授权,侵删

2019-03-30 20:24:00 104

原创 操作符重载、条件编译

运算符重载(英语:operator overloading)是多态的一种。这里,运算符(比如+,=或==)被当作多态函数,他们的行为随着其参数类型的不同而不同Java 不支持操作符重载,虽然可以对两个 String 对象执行加法运算,但是这是语言内置支持的操作,不属于操作符重载,而 C++ 可以。条件编译:一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件...

2019-03-30 20:14:34 113

转载 泛型(转载)

Java泛型详解http://www.importnew.com/24029.html转载未经授权,侵删

2019-03-30 20:03:08 93

原创 LeetCode----整数反转

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231, 231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。...

2019-03-30 12:01:19 85

原创 冒泡排序的最优时间复杂度为什么是O(n)

一般冒泡排序public static void bubbleSort(int[] a){ int n = a.length-1; for(int i=0;i<n;i++) for(int j=1;j<n-1;j++) if (a[j-1]>a[j]) swap(a[j-1],a[j])...

2019-03-28 15:35:01 2474 4

转载 数据库索引到底是什么,是怎样工作的?(转载)

数据库索引到底是什么,是怎样工作的?https://blog.csdn.net/weiliangliang111/article/details/51333169转载未经授权,侵删

2019-03-27 14:23:10 159

转载 SQL truncate 、delete与drop区别(转载)

SQL truncate 、delete与drop区别https://www.cnblogs.com/8765h/archive/2011/11/25/2374167.html转载未经授权,侵删

2019-03-26 20:18:30 95

转载 数据库设计的三大范式

数据库设计的三大范式https://www.cnblogs.com/zhhh/archive/2011/04/21/2023355.html转载未经授权,侵删

2019-03-26 17:24:47 139

转载 一级、二级、三级封锁协议(转载)

一级、二级、三级封锁协议https://blog.csdn.net/justdb/article/details/7596132转载未经授权,侵删

2019-03-26 14:37:53 7172

原创 《剑指offer》----二叉树的镜像

《剑指offer》----二叉树的镜像题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \...

2019-03-25 21:05:30 563

原创 《剑指offer》----树的子结构

《剑指offer》----树的子结构题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)解题思路首先从根节点开始比较,然后树的左子树、右子树递归比较,如果B子树遍历完了,而且值都能与A对应,则认为是子结构,如果A子树遍历完了,B子树还没遍历完则不是子结构,依次递归比较A子树的每个结点和B子树的每个结点。源码/**public ...

2019-03-25 20:55:26 98

原创 《剑指offer》----合并两个排序的链表

《剑指offer》----合并两个排序的链表题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。解题思路递归:非递归:新建一个链表,比较两个链表的结点大小,不断插入到新链表。源码/*public class ListNode { int val; ListNode next = null; ...

2019-03-24 15:34:46 111

原创 《剑指offer》----调整数组顺序使奇数位于偶数前面

《剑指offer》----调整数组顺序使奇数位于偶数前面题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。解题思路复制给定数组,统计原数组中奇数的个数,然后根据复制数组来替换掉原数组中的数据。源码public class Solution { ...

2019-03-23 14:23:02 118

转载 TCP的滑动窗口与拥塞窗口(转)

TCP的滑动窗口与拥塞窗口(转)https://blog.csdn.net/zhangdaisylove/article/details/47294315未经授权,侵删

2019-03-22 18:29:34 578

原创 《剑指offer》----数值的整数次方

《剑指offer》----数值的整数次方题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。解题思路首先肯定不能用Math.pow(base,exponent)的,会被面试官鄙视的我们可以用递归的方法来解决拆分成x的n次方等于(x*x)的n/2次方(n%2==0),和x*(x*x)的n/2次方(n%2==1)...

2019-03-21 20:05:14 148

原创 《剑指offer》----二进制中1的个数

《剑指offer》----二进制中1的个数题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。解题思路程序中的所有数在计算机内存中都是以二进制的形式储存的。可以使用位运算直接对数进行操作。本题中,假设n为10110100, n-1便为10110011,可知每减1,会将n最右边的1和该数字最右边的数字全部取反,此时进行按位与...

2019-03-19 21:46:08 235

转载 "equals","==","hashcode"(转载)

重写equal()时为什么也得重写hashCode()之深度解读equal方法与hashCode方法渊源https://blog.csdn.net/javazejian/article/details/51348320(转载未经授权,侵删)

2019-03-19 20:02:32 71

转载 谈谈你对AQS的理解(好文

并发系列3-大白话聊聊Java并发面试问题之谈谈你对AQS的理解?【石杉的架构笔记】https://www.cnblogs.com/daiwei1981/p/10259164.html(转载未经授权,侵删)

2019-03-17 15:44:11 757

原创 《剑指offer》----矩形覆盖

《剑指offer》----矩形覆盖题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?解题思路计算f(1)=1,f(2)=2,f(3)=3,f(4)=5可知,该题依然是斐波那契数列。源码public class Solution { public int RectCover(int ...

2019-03-17 15:20:30 106

原创 《剑指offer》----变态跳台阶

《剑指offer》----变态跳台阶题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。解题思路f(n)=f(n-1)+f(n-2)+...+f(1) ①f(n-1)=f(n-2)+f(n-3)+...+f(1) ②①-②得f(n)-f(n-1)=f(n-1)即f(n)=2f(n-1)q...

2019-03-17 15:00:40 105

原创 《剑指offer》----重建二叉树

《剑指offer》----重建二叉树题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。解题思路前序遍历的数组中第一个值一定是根结点(根结点-&gt;左结点-&gt;右结点),该结点对应到中序...

2019-03-17 14:30:08 115

原创 《剑指offer》----反转链表

《剑指offer》----反转链表题目描述输入一个链表,反转链表后,输出新链表的表头。解题思路考虑将给定链表头结点指向的结点(存储第一个值的结点)插入到新建链表的第一个结点(头插法)①存放要操作结点的指向指针A,防止丢失链表后续结点。②将要操作结点的指针指向新链表头结点指向的那一个结点③将新链表头结点的指针指向操作结点④将保存的指向指针A赋给给定链表的头指针源码...

2019-03-16 17:32:54 94

原创 《剑指offer》----链表种倒数第k个结点

《剑指offer》----链表种倒数第k个结点题目描述输入一个链表,输出该链表中倒数第k个结点。解题思路首先我们定义两个指针,一个快指针,一个慢指针。首先使得快指针先移动k个结点,此时快慢指针相差k个结点,然后同时以一个结点的速度同时移动快慢指针,当快指针走到末尾时,因为快慢指针一直相差k个结点,所以慢指针此刻正好指在倒数第k个结点。要考虑的是,如果传入链表为空直接返回空,如果k的...

2019-03-14 16:31:26 109

原创 《剑指offer》----跳台阶

《剑指offer》----跳台阶题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。解题思路跳第n级台阶一共有f(n)种跳法,当跳到第n-1级时,此时离第n级就欠1级,青蛙跳到这级时一共有f(n-1)种跳法,如果青蛙跳到第n-2格(它要一次性跳2级上去),它到达此位置一共有f(n-2)种跳法,所以f(n)=f...

2019-03-13 21:15:43 99

原创 算法复杂度描述中为什么用“logn”,而不用“log2n”、“lnn”或“lgn”

问题描述算法复杂度描述中为什么用“logn”,而不用“log2n”、“lnn”或“lgn”原因假如有logaB(a为底数),由换底公式可得:logcA(c为底数)为常数,由O的运算规则"O(C×f(N))=O(f(N)),其中C是一个正的常数"得O(logaB)=O(logcB)可知算法的时间复杂度与不同底数只有常数的关系,均可以省略自然可以用logN代替。...

2019-03-13 13:36:56 11812 2

原创 《剑指offer》----斐波那契数列

《剑指offer》----斐波那契数列题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n&lt;=39解题思路在数学上,费波那契数列是以递归的方法来定义: (n≧2)用文字来说,就是费波那契数列由0和1开始,之后的费波那契系数就是由之前的两数相加而得出。首几个费波那契系数是:0,1,1,2,3...

2019-03-12 14:27:17 298

原创 《剑指offer》----旋转数组得最小数字

《剑指offer》----旋转数组得最小数字题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。解题思路用修改二分查找算法来求解,用left代表旋转数组...

2019-03-11 19:51:56 122

原创 《剑指offer》----数组中重复的数字

题目描述在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。解题思路方法1:数组中包含从0~n-1的所有数字,意味着数组下标0~n-1都能找到与下标相等的数字,所以,当下标指...

2019-03-10 15:33:43 73

原创 《剑指offer》----用两个栈实现队列

题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。解题思路提供了两个栈,其中栈1可以用来压入(PUSH)元素(队列的入队),当需要弹出(POP)的时候,将栈1的所有元素弹出(POP)并压入栈2,此时栈2元素的顺序与栈1均相反,此时弹出(POP)元素就可以模拟成队列的出队,但是要注意栈2要为空才能执行弹出栈1元素的操作,否则会将栈2里已有的元素保...

2019-03-10 13:58:36 74

原创 《剑指offer》----从尾到头打印链表

《剑指offer》----从尾到头打印链表题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。解题思路考虑使用堆栈(后进先出符合题目从尾到头的特点)处理,申请一个堆栈,将链表中的值依次压入,全部压入后,便可申请一个ArrayList存储从堆栈中依次弹出的值,此时ArrayList中就是链表中从尾到头的顺序。源码/*** public class ...

2019-03-10 13:26:30 86

原创 《剑指offer》----替换空格

《剑指offer》----替换空格题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解题思路首先不考虑使用replaceAll函数,否则一行return str.toString().replaceAll(" ", "%20")就结束了,没有意义。①首先考虑从前往后进...

2019-03-09 11:46:51 101

原创 《剑指offer》----二维数组中的查找

《剑指offer》----二维数组中的查找题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解题思路因为该二维数组是从左到右递增,从上到下递增,所以推测可得,①如果目标数大于该列中位于最下的一个数字(该数字是当列最大),则目标数肯定不...

2019-03-08 20:33:12 100

原创 树莓派3(armv7)下配置node.js

   最近打算把树莓派加亚马逊Alexa做一个智能音箱,参考链接:https://amazonaws-china.com/cn/blogs/china/raspberry-alexa/    但是在树莓派3上配置node.js上遇到了很多坑,网上查阅资料树莓派上配置node.js的教材都很旧,而且大部分都解决不了问题,最后通过自己的努力,终于成功装上。        于是写博客分享一下我的经验。 ...

2018-06-03 15:19:21 3909 1

空空如也

空空如也

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

TA关注的人

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