题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 Solut ...
分类:
编程语言 时间:
2018-10-12 14:03:38
阅读次数:
142
选择优化的数据类型 MySQL支持的数据类型非常多,选择正确的数据类型对于获得高性能至关重要。不管存储哪种类型的数据,下面几个简单的原则都有助于做出更好的选择: 更小的通常更好一般情况下,应该尽量使用可以正确存储数据的最小数据类型。更小的数据类型通常更快。因为它们占用更少的磁盘、内存和CPU缓存,并 ...
分类:
数据库 时间:
2018-10-08 21:40:55
阅读次数:
199
题目大意:一个长度为$n$的数列,$m$次询问。每次询问$l\;r\;k$,表示在区间$[l,r]$内选一个长度为$k$的区间,求区间最小数的最大值 题解:常见操作,开一棵主席树,比这一位大的就赋成$1$,否则为$0$,维护前缀$1$的个数,后缀$1$的个数和区间最长$1$的个数,二分答案判断一下就 ...
分类:
其他好文 时间:
2018-10-04 20:27:01
阅读次数:
143
题目描述: 输入N个(N<=10000)数字,求出这N个数字中的最大值和最小值。每个数字的绝对值不大于1000000。 输入: 输入包括多组测试用例,每组测试用例由一个整数N开头,接下去一行给出N个整数。 输出: 输出包括两个整数,为给定N个数中的最大值与最小值。 样例输入: 5 1 2 3 4 5 ...
分类:
其他好文 时间:
2018-10-02 17:58:45
阅读次数:
203
第 16 题 最接近目标数的三数之和 对一个数组来说,找出其中的三个数,使得三数之和与target最接近,最先想到的是暴力法求解,对i = 0; j = i+ 1; k = j+1;进行三重遍历,记录对target距离的最小值,但是三重循环,时间复杂度0(n3)。 改进 : 对寻求目标数来说,三数之 ...
分类:
其他好文 时间:
2018-09-30 15:02:18
阅读次数:
143
本文参考自《剑指offer》一书,代码采用Java语言。 更多:《剑指Offer》Java实现合集 题目 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3, 4, 5, 1, 2}为{1, 2, 3, 4, 5} ...
分类:
编程语言 时间:
2018-09-14 23:16:15
阅读次数:
212
选择排序:是一种简单直观的排序算法。他的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,在从剩余未排序元素中继续寻找最小(大)元素,然后放到一排序序列的末尾。以此类推,直到所有元素均排序完毕。 选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置位置上 ...
分类:
编程语言 时间:
2018-09-14 16:12:03
阅读次数:
217
Java中的经典算法之选择排序(SelectionSort) a) 原理:每一趟从待排序的记录中选出最小的元素,顺序放在已排好序的序列最后,直到全部记录排序完毕。也就是:每一趟在n-i+1(i=1,2,…n-1)个记录中选取关键字最小的记录作为有序序列中第i个记录。基于此思想的算法主要有简单选择排序 ...
分类:
编程语言 时间:
2018-09-07 14:20:27
阅读次数:
153
这道题其实难度应该小于紫题...除了一点小特判以外没什么难度...$\leq50$行代码即可$AC$此题 题目大意:给定两个数$a,b(1\leq a,b\leq 10^{14})$分别表示红色方格个数和蓝色方格个数,求这$a$个红色方格和$b$个蓝色方格构成的矩形周长的最小值,且满足在所构成的矩形 ...
分类:
其他好文 时间:
2018-09-05 08:58:41
阅读次数:
175
题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 解题代码: ...
分类:
编程语言 时间:
2018-09-04 23:35:30
阅读次数:
364