给定一个有序数组(递增),写程序构建一棵具有最小高度的二叉树。
struct Node
{
int value;
Node *left;
Node *right;
};
void createTree(int a[], int begin, int end, Node* &r...
分类:
编程语言 时间:
2015-01-29 09:37:31
阅读次数:
226
二分查找的优点是比较次数少,查找数度快,但是在查找之前必须要简历有序表。另外,二分查找只适用于顺序存储的有序表,而不适用于链接存储的有序表。
二分查找的过程:首先将x与数组的中间项进行比较,若x小于中间项的值,则在线性表的前半部分进行二分查找;若x大于中间项的值,则在线性表的后半部分进行二分查找;若x等于中间项的值,则查找结束。若待二分的子表长度为0时仍然没有找到这个元素,则说明数组中没...
分类:
编程语言 时间:
2015-01-28 19:49:47
阅读次数:
182
二分查找的优点是比较次数少,查找速度快,但是在查找之前必须建立有序表。另外,二分查找只适用于顺序存储的有序表,而不适用于链接存储的有序表。
假设:给定一个按从小到大排序的数组P,对分查找某个元素的位置。
二分查找的过程为首先将x和数组的中间项进行比较,若x小于中间项的值,则在线性表的前半部分进行二分查找;若x大于中间项的值,则在线性表的后半部分进行二分查找;若x等于中间项的值,...
分类:
编程语言 时间:
2015-01-27 21:57:53
阅读次数:
156
题目:两个数组A、B,长度分别为m、n,即A(m)、B(n),分别是递增数组。求第K大的数字。方法一:简单的办法,使用Merge Sort,首先将两个数组合并,然后在枚举查找。这个算法的时间复杂度是O(m+n)、空间复杂度也是O(M+n)。这个方法其实没有考虑到有第K大数为两个相同数字的情况。方法二...
分类:
编程语言 时间:
2015-01-26 22:25:57
阅读次数:
295
计数排序 是 线性时间的 排序算法,时间复杂度为O(n),虽然有一定的局限性。但是还是很好的一种算法。用2个数组进行额外的存储信息,数组 c[ ] 是对 数据中值相同的 记录下来,以便后面查阅;b[ ]是输出的有序数组,再将有序的数组输出。...
分类:
编程语言 时间:
2015-01-22 15:39:48
阅读次数:
187
1、插入排序思想:将无需组中的第一个数插入到有序数组中,这样经过N-1次插入即可完成排序。C++实现#include using namespace std;void Insert_Sort(int a[],int n);int main(void){ int a[] = {1,3,5,5,3...
分类:
编程语言 时间:
2015-01-20 17:07:13
阅读次数:
182
Given two sorted integer arrays A and B, merge B into A as one sorted array.
Note:
You may assume that A has enough space (size that is greater or equal to m + n) to hold additional elements from ...
分类:
编程语言 时间:
2015-01-12 21:01:06
阅读次数:
280
package?cn.hcm;
public?class?MergeSort?{
?/**
??*?合并两个有序数组
??*?@param?source
??*?@param?start
??*?@param?mid
??*?@param?end
??*?@param?sourceCopy
??*/
?priva...
分类:
编程语言 时间:
2015-01-07 11:18:18
阅读次数:
174
数组是最基本的数据结构,关于数组的面试题也屡见不鲜,本文罗列了一些常见的面试题,仅供参考,如果您有更好的题目或者想法,欢迎留言讨论。目前有以下18道题目,如果有好的题目,随时更新。
数组求和求数组的最大值和最小值求数组的最大值和次大值求数组中出现次数超过一半的元素求数组中元素的最短距离求两个有序数组的共同元素求三个数组的共同元素找出数组中唯一的重复元素找出出现奇数次的元素求数组中满足给定和的...
分类:
编程语言 时间:
2015-01-06 18:05:00
阅读次数:
230
一个二叉树被序列化为数组,如何反序列化,也就是如何从序列化好的一个数组恢复成二叉树?
在上一篇文章中讲述了如何将一个有序数组创建成一个二叉搜索树,那么如果将将一个儿茶搜索树序列化为一个有序数组,然后按照上面的方法在反序列化即可。对二叉搜索树进行中序遍历即可得到一个有序的数组,那么上篇文章已经完成了对二叉搜索树的序列化和反序列化。同时如果想将二叉搜索树的序列化和反序列化的结果通过文件读取,也是同样...
分类:
其他好文 时间:
2015-01-04 21:29:04
阅读次数:
172