码迷,mamicode.com
首页 >  
搜索关键字:归并排序 二分查找    ( 5560个结果
[LeetCode] Search Insert Position [21]
解题思路 给一个排序数组和一个数,寻找该数在数组的位置或者插入位置。本题考查的还是二分查找。二分查找返回的结果就是该数在数组中该插入的位置。 代码实现...
分类:其他好文   时间:2014-06-11 00:55:14    阅读次数:205
Java数据结构与算法之数组
数组特点:     1、大小固定     2、同一数据类型     3、下标访问     4、数据项可重复     Java数据类型:基本类型(int和double)和对象类型。在许多编程语言中,数组也是基本类型。但在Java中把它们当作对象来对待,因此在创建数组时必须使用new操作符。     有序数组与无序数组比较:最主要的好处是查找速度比无序数组快多了。不好的方面是在插入操作...
分类:编程语言   时间:2014-06-10 14:53:07    阅读次数:359
Sqrt(x)
题目 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
hdu2993之斜率dp+二分查找
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
Leetcode:sqrt 开方运算
戳我去解题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
python 实现二分法查找
二分查找图二叉树:代码#!/usr/bin/python#-*-coding:utf-8-*-#----------------------------------------------------------------------------------------# to_do : bin....
分类:编程语言   时间:2014-06-09 23:06:48    阅读次数:295
Collections -- 集合的工具类
Collections是JDK针对集合提供的一个工具类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。1、搜索如可以使用Collections提供的二分查找方法binarySearch()2、排序如可以使用Collections.sort()对List进行了排序3、线程安全化使用...
分类:其他好文   时间:2014-06-09 21:34:32    阅读次数:175
[LeetCode] Sort List
Sort a linked list in O(n log n) time using constant space complexity.一谈到时间复杂度O(nlogn),立即联想到以下3种排序方法:1.归并排序(基于分治):时间复杂度O(nlogn),归并排序的最好、平均、最坏时间复杂度没有差别...
分类:其他好文   时间:2014-06-09 20:37:31    阅读次数:244
二分法求一元三次方程的一个实数根
一元一次方程的一般形式是$ax+b=0$,很容易解得$x=-\frac{b}{a}$。对于一元二次方程,也有一个简单的求根公式可以解出方程的根。但是一元三次方程的求根公式较为复杂,需分情况,编写程序的复杂度比前两个要大得多。你可能已经听说过二分查找法,在已排序的数组中查找某一个数的时间复杂度从$O(...
分类:其他好文   时间:2014-06-09 12:59:47    阅读次数:323
归并排序
// 归并排序 void Merge1(int arr[], int p, int mid, int r) { int n1 = mid - p + 1; int n2 = r - mid; int *pLeft = new int[n1](); int *pRight = new int[n2](); for (int i = 0; i < n1; ++i) {...
分类:其他好文   时间:2014-06-08 18:08:59    阅读次数:190
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!