package com.wangzhu.njupt;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.IOException;import java.io.StreamTokenizer;...
分类:
其他好文 时间:
2014-10-05 19:54:58
阅读次数:
256
//用map来实现总是超出最大的内存限制
题目描述:
统计一个数字在排序数组中出现的次数。
输入:
每个测试案例包括两行:
第一行有1个整数n,表示数组的大小。1
第二行有n个整数,表示数组元素,每个元素均为int。
第三行有1个整数m,表示接下来有m次查询。1
下面有m行,每行有一个整数k,表示要查询的数。
输出:
对应每个测试案例,有m行输出,每行1整数,表示数组中该数字出...
分类:
其他好文 时间:
2014-09-14 10:09:36
阅读次数:
167
转载请注明出处:http://blog.csdn.net/ns_code/article/details/27364557题目描写叙述:统计一个数字在排序数组中出现的次数。输入:每一个測试案例包括两行:第一行有1个整数n,表示数组的大小。1#include/*二分查找法计算key出现的次数*/int...
分类:
其他好文 时间:
2014-08-19 22:25:15
阅读次数:
213
题目描述:统计一个数字在排序数组中出现的次数。
输入:
每个测试案例包括两行:
第一行有1个整数n,表示数组的大小。1
第二行有n个整数,表示数组元素,每个元素均为int。
第三行有1个整数m,表示接下来有m次查询。1
下面有m行,每行有一个整数k,表示要查询的数。
输出:
对应每个测试案例,有m行输出,每行1整数,表示数组中该数字出现的次数。
样例输入:
...
分类:
其他好文 时间:
2014-08-17 18:36:12
阅读次数:
169
数字在排序数组中出现的次数 代码(C)本文地址: http://blog.csdn.net/caroline_wendy题目: 统计一个数字在排序数组中出现的次数.通过折半查找, 找到首次出现的位置, 再找到末次出现的位置, 相减即可.时间复杂度O(logn).代码:/*
* main.cpp
*
* Created on: 2014.6.12
* Author: Spike
...
分类:
其他好文 时间:
2014-07-06 09:45:25
阅读次数:
177
我做这道题,是先用二分查找找到该数字,而后再遍历其前后相同的数字,统计次数。这种做法的平均时间复杂度为O(logn),最坏情况下为O(n),剑指offer上给的思路是两次用二分查找分别找到该数字第一次和最后一次出现的位置,这样的时间复杂度平均和最坏都是O(logn),稍好些》
下面贴上我按照自己思路写的代码:...
分类:
其他好文 时间:
2014-06-07 01:19:45
阅读次数:
197
题目:统计一个数字k在排序数组中出现的次数。例如输入排序数组{1,2,3,3,3,3,4,5}和数字3,输出4次
方案一:扫描数组,记录第一个出现的k和最后一个k中间有多少个,时间复杂度为O(n)
方案二:由于数组是有序的,那么我们可以利用二分的思想,求出k在数组中的第一个位置和最后位置相减即可。时间复杂度为O(logN)
注意严格按照良好的C++编码风格
#include...
分类:
其他好文 时间:
2014-05-24 21:09:24
阅读次数:
194
统计一个数字在排序数组中出现的次数。例如输入{2,2,2,2,2,3,5,5}和数字2,输出5.常规的顺序扫描法时间复杂度是O(n),可以进一步优化。用二分查找的方法进行查找可以把时间复杂度降为O(logn)。
分类:
其他好文 时间:
2014-05-17 22:22:39
阅读次数:
256