- 博客(28)
- 资源 (2)
- 收藏
- 关注
原创 求出先增后减数组序列中的最大值
输入 {1,2,3,4,5,6,7,8,9 2,4,5,6}输出 9要求时间复杂度小于O(n)class Solution { public int findPeakElement(int[] nums) { return findPeakElement(nums,0,nums.length); } public int fi...
2019-04-08 16:33:03
1724
原创 数组中连续n个数相加的最小值
输入数组int [] array = {1,2,0,7,8,4,3,2,5,6,7}; n代表n个数相加,数组中连续n个数相加的最小值public static int getNNumMin(int [] array, int n){ //计算连续的前n个数相加,并假设前n个数相加的和最小 int min = 0; for(int i=0;i<n;i++){ min ...
2019-04-08 16:07:30
2629
原创 二进制求和
给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。示例 1:输入: a = "11", b = "1"输出: "100"示例 2:输入: a = "1010", b = "1011"输出: "10101"解题思路:将2进制先转成10进制相加后在转成2进制字符串class Solution { publ
2019-02-13 16:56:05
280
原创 反转字符串中的单词 III
给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例 1:输入: "Let's take LeetCode contest"输出: "s'teL ekat edoCteeL tsetnoc" 注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。class Solution { public String ...
2019-02-13 14:50:35
175
原创 泛型中? super T和? extends T的区别
1、? extends T意思是泛型擦除到T,是T类型或其子类型,具体是什么类型不确定,只能存放null,用下面的代码解释 //放Number及Number的子类具体是Number的哪个子类不确定,所以只具有放null的能力,主要用来读取数据,以下都是合法的赋值方式 List<? extends Number> foo0 = new ArrayL...
2019-01-24 16:55:19
1730
1
原创 只出现一次的数字--较为高效的解法
题目给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4 解答使用异或运算:如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异...
2019-01-22 16:10:28
171
原创 第二章 API的理解和使用(1)
2.1 预备了解redis的一些全局命令、数据结构和内部编码、单线程命令处理机制是十分必要的,它们能为后面内容的学习打下一个好的基础,主要体现在两个方面:1、redis的命令有成百上千个,死记硬背困难,但是理解一下redis的一些机制,会发现这些命令有很强的的通用性。2、有些数据和命令必须在特定场景下使用,一旦使用不当可能对Redis本身或者应用本身造成致命的伤害2.1.1 全局命...
2019-01-20 12:20:37
266
原创 求众数(来自leetcode)--可用map及其子类的分拣存储解决
给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在众数。示例 1:输入: [3,2,3]输出: 3示例 2:输入: [2,2,1,1,1,2,2]输出: 2class Solution { public int majorityElement(int[] num...
2019-01-19 16:52:38
195
原创 用Map及其子类分拣存储的思想处理数据
1、构造List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();用来存放数据此处略,其中用IMPCNYNAME表示国别名称,CDCDE表示税号 2、按税号排序用Collections.sort(list,new Comparator<Map<S...
2019-01-11 10:21:01
189
原创 第一章 redis学习总结
一、Redis可以做什么1、缓存2、排行榜系统3、计数器应用4、社交网络5、消息队列系统二、redis 相关启动命令及默认端口1、redis服务器端启动命令:redis-server(启动的默认端口是6379)。2、redis客户端启动命令:通过redis-cli -h{host} -p {port},例如:redis-cli -h127.0.0.1 -p 637...
2018-12-16 17:15:46
146
原创 给定一个整数数组,判断是否存在重复元素。
给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。示例 1:输入: [1,2,4,1]输出: true示例 2:输入: [1,2,3,6]输出: false示例 3:输入: [1,1,1,3,3,6,3,2,6,2]输出: truepublic boolean c...
2018-11-19 13:27:27
3604
原创 二叉树的后序遍历
给定一个二叉树,返回它的 后序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1]/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; *...
2018-11-19 09:42:22
153
原创 翻转字符串里的单词
给定一个字符串,逐个翻转字符串中的每个单词。示例: 输入"the sky is blue"输出: "blue is sky the"说明:无空格字符构成一个单词。 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。public static String reverseWords(...
2018-11-15 15:50:20
122
原创 数组加一
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321...
2018-11-15 15:45:16
1640
原创 两数之和
描述:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]public int[] twoSum(int[] nums, int targ...
2018-11-14 11:13:57
121
原创 两整数相除
给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。示例 1:输入: dividend = 10, divisor = 3输出: 3示例 2:输入: dividend = 7, divisor = -3输出: -2说明:被除数和除数均...
2018-11-14 10:58:32
734
原创 翻转链表
反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?class Solution { public ListNode reverseList(ListNode head) { ...
2018-11-13 16:11:43
140
原创 判断一个数是2的n次幂效率较高的解法
判断一个数是2的n次幂效率较高的解法 public boolean isPowerOfTwo(int n) { if(n<=0){ return false; }else{ return (n&n-1)==0; } } ...
2018-11-13 15:26:58
413
原创 数组中第k大的元素
在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k=2输出: 5示例 2:输入: [3,2,3,1,2,4,5,5,6] 和 k=4输出: 4说明: 你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。import java.ut...
2018-11-13 13:34:51
210
原创 只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4class Solution { public int singleNumber(int...
2018-11-13 11:14:56
150
原创 二叉树的前序遍历
给定一个二叉树,返回它的 前序 遍历。 示例:输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3] public List<Integer> preorderTraversal(TreeNode root) { List<Integer> list = new Arra...
2018-11-13 11:11:58
133
原创 给定一个字符串,逐个翻转字符串中的每个单词(来自leetCode)。
示例: 输入:"the sky is blue",输出: "blue is sky the".说明:无空格字符构成一个单词。 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。 public String reverseWords(String s) { StringB...
2018-11-12 15:54:08
5771
原创 用两个栈实现队列
package com.aim.getoff;import java.util.Stack;public class Twostack { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stack2 = new Stack<Integer>(); ...
2018-11-11 10:45:26
107
原创 求出一个字符串中最大的回文字符串
求出一个字符串中最大的回文字符串(不是最优解) public String longestPalindrome(String s) { //存放所有的回文串 Set<String> palindromes = new HashSet<>(); s = s.trim(); if(s.equals(new StringBu...
2018-11-11 10:34:38
795
原创 ORACLE中好用的两个函数
1.HEXTORAW语法: HEXTORAW(string) 功能: 将由string表示的二进制数值转换为一个RAW数值. String应该包含一个十六进制的数值. String中的每两个字符表示了结果RAW中的一个字节..HEXTORAW和RAWTOHEX为相反的两个函数2.RAWTOHEX语法: RAWTOHEX(rawvalue)功能: 将RAW类数值rawval...
2018-11-09 15:28:11
292
原创 回文数
判断一个整数是否是回文数 public boolean isPalindrome(int x) { String xStr = String.valueOf(x); StringBuilder sb = new StringBuilder(xStr); if(xStr.equals(sb.reverse().toString())){ ...
2018-11-09 15:16:34
141
原创 二叉树中序遍历
给定一个二叉树,返回它的中序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [1,3,2]import java.util.*;class Solution { public List<Integer> inorderTraversal(TreeNode root) { Lis...
2018-11-09 15:10:46
152
原创 如何判断一个整数是2的n次幂
一、如何判断一个整数是2的n次幂?分析可以用枚举法判断一个数是2的你次幂,代码如下:package com.aim.getoff;import java.math.BigInteger;import java.util.Scanner;public class Judge2N {public static void main(String[] args) { Scanner scc ...
2018-11-04 13:15:07
939
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人