解题思路
给一个排序数组和一个数,寻找该数在数组的位置或者插入位置。本题考查的还是二分查找。二分查找返回的结果就是该数在数组中该插入的位置。
代码实现...
分类:
其他好文 时间:
2014-06-11 00:55:14
阅读次数:
205
数组特点:
1、大小固定
2、同一数据类型
3、下标访问
4、数据项可重复
Java数据类型:基本类型(int和double)和对象类型。在许多编程语言中,数组也是基本类型。但在Java中把它们当作对象来对待,因此在创建数组时必须使用new操作符。
有序数组与无序数组比较:最主要的好处是查找速度比无序数组快多了。不好的方面是在插入操作...
分类:
编程语言 时间:
2014-06-10 14:53:07
阅读次数:
359
题目只有简单的一句话,看起来可真简单啊,呵呵,假象。这个题目的难点在于对时间效率的限制和边界值的测试。第一印象肯定是循环一个个把因子从被除数中减去不久行了么,可是对于比如INT_MAX/1或者INT_MIN/1之类的执行时间长的可怕,会超出时间限制。改善时间效率的思路是参考网上别人代码,将因子不断乘以2(可以通过移位实现,同时结果也从1开始不断移位加倍),然后和被除数比较,等到大于被除数一半了,就从被除数中减去,将因子个数叠加入结果中。然后在剩下的被除数中采用同样的方法减去小于其一半的因子和,循环往复。我在...
分类:
其他好文 时间:
2014-06-10 06:51:06
阅读次数:
209
题目
Implement int sqrt(int x).
Compute and return the square root of x.
方法一
使用二分查找,注意int的边界问题,使用除法。
public int sqrt(int x) {
if (x <= 1) {
return x;
...
分类:
其他好文 时间:
2014-06-10 06:49:45
阅读次数:
274
MAX Average Problem
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5825 Accepted Submission(s): 1446
Problem Description
Consid...
分类:
其他好文 时间:
2014-06-10 06:09:25
阅读次数:
293
戳我去解题Implementint sqrt(int x).Compute and
return the square root ofx.1. 二分查找2.
牛顿迭代法不断用(x,f(x))的切线来逼近方程x^2-a=0的根。根号a实际上就是x^2-a=0的一个正实根,这个函数的导数是2x。也就是说...
分类:
其他好文 时间:
2014-06-10 00:30:29
阅读次数:
255
二分查找图二叉树:代码#!/usr/bin/python#-*-coding:utf-8-*-#----------------------------------------------------------------------------------------#
to_do : bin....
分类:
编程语言 时间:
2014-06-09 23:06:48
阅读次数:
295
Collections是JDK针对集合提供的一个工具类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。1、搜索如可以使用Collections提供的二分查找方法binarySearch()2、排序如可以使用Collections.sort()对List进行了排序3、线程安全化使用...
分类:
其他好文 时间:
2014-06-09 21:34:32
阅读次数:
175
注意p的边界情况,p为0,或者 p为k奇数+偶数 = 奇数奇数+奇数 = 偶数#include
#include #include #include #include using namespace std;int main(){ int n,k,p;
long a; cin >>...
分类:
其他好文 时间:
2014-06-09 20:20:23
阅读次数:
243
一元一次方程的一般形式是$ax+b=0$,很容易解得$x=-\frac{b}{a}$。对于一元二次方程,也有一个简单的求根公式可以解出方程的根。但是一元三次方程的求根公式较为复杂,需分情况,编写程序的复杂度比前两个要大得多。你可能已经听说过二分查找法,在已排序的数组中查找某一个数的时间复杂度从$O(...
分类:
其他好文 时间:
2014-06-09 12:59:47
阅读次数:
323