自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (12)
  • 收藏
  • 关注

原创 随笔-反转链表

题目:反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?思路:pre作为反转后的头结点,curNext作为老节点的头节点常规版本/** * Def

2018-12-29 17:14:23 124

原创 随笔-移除链表元素

删除链表中等于给定值 val 的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5思路:主要有几个临界点,因为leetcode上的链表题,所有的头结点都算值节点,所以暂时将它当头结点使用,去除其他节点的val值之后,在判断它是不是val;/** * Definit...

2018-12-28 17:40:58 256

原创 随笔-旋转数组(翻转,循环交换)

给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例 2:输入: [-1,-100,3,99] 和 k...

2018-12-28 15:26:53 455

原创 随笔-最大间距/数组中相邻元素的最大差值

题目:给定一个无序的数组,找出数组在排序之后,相邻元素之间最大的差值。如果数组元素个数小于 2,则返回 0。示例 1:输入: [3,6,9,1]输出: 3解释: 排序后的数组是 [1,3,6,9], 其中相邻元素 (3,6) 和 (6,9) 之间都存在最大差值 3。示例 2:输入: [10]输出: 0解释: 数组元素个数小于 2,因此返回 0。说明:你可以假设数组中所有元素都...

2018-12-28 13:16:09 1369

原创 随笔-寻找数组中元素的峰值

题目:峰值元素是指其值大于左右相邻值的元素。给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。你可以假设 nums[-1] = nums[n] = -∞。示例 1:输入: nums = [1,2,3,1]输出: 2解释: 3 是峰值元素,你的函数应该返回其索引 2。示...

2018-12-28 12:56:18 1399

原创 随笔-相交链表(巧妙解法)

题目:相交链表方法一常规解法思路:采用双指针先计算出两条链的长度,然后求出差值,先让长链走差值步,下来两条链的长度一样,然后开始比较,直到遇见相见的节点或者走完链表。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * L...

2018-12-28 11:58:09 560

原创 随笔-最小栈

题目:设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。push(x) – 将元素 x 推入栈中。pop() – 删除栈顶的元素。top() – 获取栈顶元素。getMin() – 检索栈中的最小元素。示例:MinStack minStack = new MinStack();minStack.push(-2);minStack.push(0);...

2018-12-26 18:47:02 159

原创 随笔-寻找旋转排序数组中的最小值(有重复元素)

题目:假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。请找出其中最小的元素。注意数组中可能存在重复的元素。示例 1:输入: [1,3,5]输出: 1示例 2:输入: [2,2,2,0,1]输出: 0说明:这道题是 寻找旋转排序数组中的最小值 的延伸题目。允许重复会影响算法的...

2018-12-26 17:40:56 357 2

原创 随笔-寻找旋转排序数组中的最小值(无重复数字)

题目:假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。请找出其中最小的元素。你可以假设数组中不存在重复元素。示例 1:输入: [3,4,5,1,2]输出: 1示例 2:输入: [4,5,6,7,0,1,2]输出: 0思路:如果数组是排序数组,那么第一个元素是小于最后一个元素的,...

2018-12-26 16:27:16 292

原创 随笔-翻转字符串里的单词

题目:给定一个字符串,逐个翻转字符串中的每个单词。示例:输入: “the sky is blue”,输出: “blue is sky the”.说明:无空格字符构成一个单词。输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。思路:先用String的库函数,trim 将字符串头部和尾部的空格去除。采...

2018-12-26 15:11:38 163

原创 随笔-数组加一(整型数组)

题目:给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。思路:...

2018-12-25 11:09:46 644

原创 随笔-旋转链表

题目:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4

2018-12-24 21:25:27 136

原创 随笔-搜索插入位置

题目:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入: [1,3,5,6], 0输出: 0思路:采...

2018-12-24 12:27:45 116

原创 随笔-实现strStr() (找到字符串子串)

题目:实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。示例 1:输入: haystack = “hello”, needle = “ll”输出: 2示例 2:输入: haystack = “aaaaa”, needle = ...

2018-12-23 14:55:54 493

原创 随笔-删除(移除)数组中的指定元素

题目:给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个...

2018-12-23 11:46:31 1699

原创 随笔-删除排序数组中的重复项

题目:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。示例 2:给定 n...

2018-12-23 11:08:56 216

原创 随笔-有效的括号(栈实现)

题目:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输入: ...

2018-12-21 15:38:31 263

原创 随笔-求字符数组最长公共前缀

题目:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。思路:找一个基点,比如字符数组0号下标的字符串去跟别的...

2018-12-21 15:12:47 290

原创 随笔-盛水最多的容器

方法二疑问:请领扣过来的或者csdn的大佬指点迷津 领扣原题链接我的疑惑如图:那就是最大长度 减 2 时的最大面积并不是原题的这两根红线,而是我用黑色相连的这两根。但是方法二n-2算的面积是红色的 如小生理解有误,请指点迷津。题目:给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ...

2018-12-21 11:38:10 1496 1

原创 随笔-字符串转换整数

字符串转换整数请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字符,...

2018-12-21 10:13:29 287

原创 随笔-后缀表达式求和(巧妙解法)

题目:后缀表达式求和思路:遇见数字直接出栈,遇见运算符号,用异常代替判断。处理异常时出两个元素,进行运算并将结果入栈;import java.util.Stack;public class Solution { public int evalRPN(String[] tokens) { Stack<Integer> stack = new Stack&lt...

2018-12-19 09:45:05 629

转载 随笔-不用加减乘除做加法

题目:不用加减乘除做加法我第一次做没想出来,膜拜大神帖思路:首先看十进制是如何做的: 5+7=12,三步走第一步:相加各位的值,不算进位,得到2。第二步:计算进位值,得到10. 如果这一步的进位值为0,那么第一步得到的值就是最终结果。第三步:重复上述两步,只是相加的值变成上述两步的得到的结果2和10,得到12。同样我们可以用三步走的方式计算二进制值相加: 5-101,7-111 第一...

2018-12-18 14:56:51 123

原创 随笔-左旋字符串

题目:左旋字符串思路:利用substring方法;两个str相加,从n位置开始,从n+len结束; 常规解法是,将字符串反转,然后0-n反转一次,n-len 反转一次substringpublic class Solution { public String LeftRotateString(String str,int n) { if(str.length()==...

2018-12-18 12:19:25 194

原创 随笔-合并两个有序单链表(递归/非递归)

题目:合并两个有序单链表递归:/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public ListNode Merge(ListNode...

2018-12-17 11:04:07 493

原创 随笔-求整数中二进制中1的个数

题目:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。思路:暴力方法是 >>> 32次; 当一个二进制数-1的时候,它最低位的1变成0,如果还有0那全部变成0; 如果它与原值进行与运算,那么原值最低为的1 以及后面的全部变成0;public class Solution { public int NumberOf1(int n) { ...

2018-12-16 19:04:05 471

原创 随笔-青蛙跳台阶

题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。一级:一种 ;两级:两种;三级:三种;四级:五种; 这其实是斐波那契;具体代码实现请看此链接 斐波那契第n项...

2018-12-16 18:28:57 113

原创 随笔-求斐波那契第n项(递归/非递归)

题目:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39思路:第N项为n-1 + n-2 和;递归:public class Solution { public int Fibonacci(int n) { if(n==0){ return 0; ...

2018-12-16 18:18:54 359

原创 随笔-旋转数组的最小数字

题目:旋转数组的最小数字把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路:如题目所给示例,数组可以分为两个连续递增的小数组,那么我们可以采用二分查找;当mid 大于...

2018-12-16 18:07:55 205

原创 随笔-替换空格

题目:替换空格思路:运用查找和替换两个方法;public class Solution { public String replaceSpace(StringBuffer str) { if(str.length()==0){ return null; } int i=0; while(str.indexOf("...

2018-12-16 11:37:26 175

原创 随笔-重复叠加字符串匹配

题目:给定两个字符串 A 和 B, 寻找重复叠加字符串A的最小次数,使得字符串B成为叠加后的字符串A的子串,如果不存在则返回 -1。举个例子,A = “abcd”,B = “cdabcdab”。答案为 3, 因为 A 重复叠加三遍后为 “abcdabcdabcd”,此时 B 是其子串;A 重复叠加两遍后为"abcdabcd",B 并不是其子串。注意:A 与 B 字符串的长度在1和1000...

2018-12-14 21:13:07 501

原创 随笔-数组中三个数的最大乘积

题目:给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入: [1,2,3]输出: 6示例 2:输入: [1,2,3,4]输出: 24注意:给定的整型数组长度范围是[3,104],数组中所有的元素范围是[-1000, 1000]。输入的数组中任意三个数的乘积不会超出32位有符号整数的范围。思路:先给数组排序; 最大的数分为两种情况,一种是全部为...

2018-12-14 20:44:11 687

原创 随笔-给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和

题目:给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。注意:num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。思路:从两个字符串最后一位开始相加,如果结果大于9,进位。 当有一个加完后,调用subs...

2018-12-14 15:37:33 3710 1

原创 随笔-输出从 1 到 n 数字的字符串表示

题目:写一个程序,输出从 1 到 n 数字的字符串表示。如果 n 是3的倍数,输出“Fizz”;如果 n 是5的倍数,输出“Buzz”;3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。示例:n = 15,返回:[“1”,“2”,“Fizz”,“4”,“Buzz”,“Fizz”,“7”,“8”,“Fizz”,“Buzz”,“11”,“...

2018-12-14 14:52:57 1587

原创 随笔-数字(任意进制)转换为十六进制数

题目:给定一个整数,编写一个算法将这个数转换为十六进制数。对于负整数,我们通常使用 补码运算 方法。注意:十六进制中所有字母(a-f)都必须是小写。十六进制字符串中不能包含多余的前导零。如果要转化的数为0,那么以单个字符’0’来表示;对于其他情况,十六进制字符串中的第一个字符将不会是0字符。给定的数确保在32位有符号整数范围内。不能使用任何由库提供的将数字直接转换或格式化为十六进制的方...

2018-12-14 11:54:37 2484

原创 随笔-找出两个字符串中不相同的元素

题目:给定两个字符串 s 和 t,它们只包含小写字母。字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。请找出在 t 中被添加的字母。示例:输入:s = “abcd”t = “abcde”输出:e解释:‘e’ 是那个被添加的字母。思路:好多人被是char类型束缚了,用的是两个字符串排序在进行比较的方法,其实char 也是由二进制组成的,在两个字符串当中,只有一...

2018-12-14 09:13:32 3517

原创 数据结构-排序-快速排序之固定位置选取基准法(递归/非递归)

思想:均匀的分割待排序序列 :选取一个基准par,定义两个指针 low high 一般基准选取low下标的值;如果high下标的值比par大,high–;反之将high的值放到low 下标; low的操作和high 一样 ;当high和low 相遇时,将par放到low角标,此时,左边全是比par小的,右边全是比par 大的;快速排序:递归实现public static int part...

2018-12-13 19:56:26 753

原创 随笔-数组中两个不同元素的比较

题目:给定一个整数数组,判断数组中是否有两个不同的索引 i 和 j,使得 nums [i] 和 nums [j] 的差的绝对值最大为 t,并且 i 和 j 之间的差的绝对值最大为 ķ。示例 1:输入: nums = [1,2,3,1], k = 3, t = 0输出: true示例 2:输入: nums = [1,0,1,1], k = 1, t = 2输出: true示例 3:...

2018-12-12 10:10:34 780

原创 随笔-判断数组中是否存在重复元素

题目:给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的绝对值最大为 k。示例 1:输入: nums = [1,2,3,1], k = 3输出: true示例 2:输入: nums = [1,0,1,1], k = 1输出: true示例 3:输入: nums = [1,2,3,1,...

2018-12-12 09:16:28 1582

原创 随笔-去除数组中某个元素(将数组中val移到后面去,并不改变其他元素的相对顺序)

题目:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。思路:定义一个n 用来记录值为val的元素个数,将所有不为val的元素遍历一遍;法2 看起来更为明了方法一class Solution { ...

2018-12-11 21:27:02 933

转载 随笔-判断一个链表是否为回文链表

问题:请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: trueclass Solution { public boolean isPalindrome(ListNode head) { // 要实现 O(n) 的时间复杂度和 O(1) 的空间复杂度,需要翻转后半部分...

2018-12-11 16:03:35 1187

matlab基于遗传算法实现的高效排课系统

matlab基于遗传算法实现的高效排课系统。有详细的代码

2019-05-04

java中excel源码jar包poi-3.11

java中excel源码jar包poi-3.11。实测有效。实现java中excel表格的导入导出

2019-05-04

基于遗传算法的高校在线排课系统的设计与实现

matlab基于遗传算法的高校在线排课系统的设计与实现。里面详细遗传算法的应用

2019-05-04

数图图像处理课件

一些基础的数字图像处理课件,里面包含一些基本原理概述以及简单图像处理算法演示

2019-04-28

2018届各大互联网公司面经以及答案

总结了2018年各大互联网公司经典面试笔试题,希望对2019的你有所帮助,愿你我上岸成功

2019-04-28

双矩形孔菲涅耳衍射

菲涅耳衍射可以看作是紧邻衍射屏右边的场强乘以一个二次相因子,然后进行傅里叶变换。如果我们做进一步的近似,要求 那么菲涅耳衍射积分中的二次相因子也可以忽略掉。这样一来,衍射积分变为 除了最开始的相因子外,该衍射积分和衍射屏处场强分布的傅里叶变换完全相同。

2019-04-28

分水岭算法识别米粒

采用分水岭算法对米粒进行识别,对每一步都有解释,2017a运行;

2019-04-12

黑科技_叶子从顶部掉落

一个简单的小程序,很多叶子从顶部掉落,给人一种唯美的感受!

2018-12-26

程序猿专属_表白,祝福,许愿,惊喜 html源码

表白,祝福,节日惊喜, 放上你和他(她)的合照,给他(她)一个惊喜,程序猿专属表白!

2018-12-26

空空如也

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

TA关注的人

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