参考:1、 https://www.geeksforgeeks.org/merge-sort/ 2、《剑指Offer:名企面试官精讲典型编程题》 题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对10000 ...
分类:
编程语言 时间:
2019-12-15 20:06:43
阅读次数:
82
/** * add 超过capacity会抛出异常 remove 队列为空会抛出异常 * * offer 超过capacity会返回false poll 队列为空会返回null * * put 超过capacity会阻塞 take 队列为空会阻塞 * */ public class ArrayBlo ...
分类:
其他好文 时间:
2019-12-15 12:50:11
阅读次数:
68
题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 输入描述: 输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。 class Solution: ...
分类:
编程语言 时间:
2019-12-15 12:38:14
阅读次数:
105
题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 ''' 首先判断n是不是负数,当n为负数的时候,直接用后面的while循环会导致死循环,因为负数 向左移位的话最高位补1 ! 因此需要一点点特殊操作,可以将最高位的符号位1变成0,也就 是n & 0xffffffff,这样就 ...
分类:
编程语言 时间:
2019-12-15 10:54:45
阅读次数:
138
题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. matrix = ...
分类:
编程语言 时间:
2019-12-15 10:44:01
阅读次数:
65
题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 保证base和exponent不同时为0 思路 求base的exponent次方,exponent有两种可能性, exponent>0 for循环exponent次,结果与bas ...
分类:
编程语言 时间:
2019-12-15 10:31:58
阅读次数:
78
我们在工作中很多时候都要做技术选型,去找寻既能满足自己需求又靠谱的第三方库;在前端开源生态季度繁盛的现状下,只要不是太小众的需求,我们很容易就能找到一堆相关的开源库,那我们具体要怎么做决策呢?我的做法是,先阅读开源库的说明文档让自己有一个感性的认识,然后挑选出其中的两三个库来进行更深入更全面的了解。如此说来,这**说明文档**是不是就很像我们求职时的简历呢?“简历”关都过不了,何谈“offer”啊!
分类:
其他好文 时间:
2019-12-15 01:08:41
阅读次数:
77
第一次使用的方法是依次遍历每一个字串,然后记录最大值就可以了,但是这样的话,算法的时间复杂度为O(n2) 很显然这样做不是最优解 改进之后的算法时间复杂度为O(n),用一个sum来记录字串的和,如果当前字串和负数的话,那么就要将sum直接赋值为array[i] , 因为如果sum为负数的话,当前 a ...
分类:
编程语言 时间:
2019-12-14 21:31:13
阅读次数:
108
大家都知道斐波那契数列(1、1、2、3、5、8、13、21、34、……),现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39 斐波那契数列满足递归的条件:既F(n) = F(n-1)+F(n-2) # -*- coding:utf-8 -*- class So ...
分类:
编程语言 时间:
2019-12-14 17:14:54
阅读次数:
88