二分法查找需要序列有序#include#includeint binary_search(int *array,int n,int e){ assert(array&&n>0); int low=0,high=n-1,mid; while(lowe) ...
分类:
其他好文 时间:
2015-11-22 20:11:16
阅读次数:
87
前几天在牛客网看到一道关于abs()函数返回值的题目,见下图,当时还没反应过来,第一反应是:自从我开始学C语言,就知道它是用来求int数的绝对值的,返回值当然是0或者正数啊,一看答案就是A。 后来思来想去,质问自己 难道这道题就这么简单?于是果断先查函数库,得到:#include //或ma...
分类:
其他好文 时间:
2015-11-16 00:55:02
阅读次数:
849
public class Demo { public static void main(String[] args) { System.out.println(search2(new int[]{1,4,5,9,11,23,25,33},7)); } public static int sear.....
分类:
其他好文 时间:
2015-11-03 00:28:48
阅读次数:
176
这套题来自于牛客网剑指offer的第四题,由于本题涉及到了对树的递归操作,而且在边界上自己计算时犯了小错误,这里记录一下:题目描述如下:题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5...
分类:
其他好文 时间:
2015-10-29 11:23:39
阅读次数:
238
#include<stdio.h>intbin_search(intarr[],intsize,intkey){intleft=0;intright=size-1;while(left<=right){intmid=(left+right)/2;if(arr[mid]>key)right=mid-1;elseif(arr[mid]<key)left=mid+1;else{returnmid;//如果能找到,则返回mid下标}}return-1;如果找..
分类:
编程语言 时间:
2015-10-28 07:09:21
阅读次数:
262
顺序查找并没有对表中的关键字域的顺序做出任何假设,与顺序查找不同,在折半查找中,表中的记录是按关键字域有序排列的,其比较会出现下面三种结果:
searchumn< list[middle].key,此时,无需考虑位于list[middle]和list[n-1]之间的记录,而继续查找位于list[0]和list[middle-1]间的记录。
searchnum=list[middle].key,此时...
分类:
其他好文 时间:
2015-10-26 13:48:31
阅读次数:
162
问题描述在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符的位置。若为空串,返回-1。位置索引从0开始.示例:
输入:sabcdsdf
输出:1算法描述定义一个52个元素的整型数组aCount,初始化为0,每个字母(大小写)依次对应一个,记录字母出现的次数;
定义一个52个元素的整型数组aPos,初始化为-1,每个字母(大小写)对应一个,记录字母第一次出...
分类:
其他好文 时间:
2015-10-26 00:42:47
阅读次数:
173
1.问题描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。2.问题分析 2.1首先了解二叉树的结构 2......
分类:
其他好文 时间:
2015-10-20 11:49:30
阅读次数:
163
1.问题描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。2.问题分析 水平方向、垂直方向二重循环查找3.源代码package www.nowcoder.com.conque.....
分类:
编程语言 时间:
2015-10-19 23:59:23
阅读次数:
436