金山软件面试题

蜡笔小新啦 2012-10-25 10:59:51
加精
1. 一个数组{3,4,5,6,3},请输出这个数组的全排列,比如34563、43563、33456...。
2. 编写程序编写程序编写程序编写程序:在O(n)时间复杂度内从数组array[0..n-1]中找出第k个最小的元素。 说明:算法可以对array中的元素进行排序。
3. 综合考察综合考察综合考察综合考察:银行有个存有n个用户编号的文件,每个数都小于n,其中n=10的7次方。每个编号都不重复。 输出:n个数升序排列。约束条件:内存最多有2兆的空间,运行时间复杂度为O(n)
...全文
13738 149 打赏 收藏 转发到动态 举报
写回复
用AI写文章
149 条回复
切换为时间正序
请发表友善的回复…
发表回复
signforlin 2013-09-21
  • 打赏
  • 举报
回复
引用 147 楼 wslejeff 的回复:
7.某天晚上,有4个人要过桥,都在桥的一边,有一个手电筒,一次最多过两个人, 不管几个人过桥都要手电筒,每个人过桥时间为1,2,5,10.请问他们最快多久可以过桥, 用什么方案? 1把10抱过去 1分钟 1回来 1分钟 1把 5抱过去 1分钟 1回来 1分钟 1把 2抱过去 1分钟
一下抱3个岂不更快。。。。
陆远 2013-06-07
  • 打赏
  • 举报
回复
引用 18 楼 pengliangchina 的回复:
[Quote=引用 14 楼 的回复:] 引用 11 楼 的回复: 引用 2 楼 的回复: 7.某天晚上,有4个人要过桥,都在桥的一边,有一个手电筒,一次最多过两个人, 不管几个人过桥都要手电筒,每个人过桥时间为1,2,5,10.请问他们最快多久可以过桥, 用什么方案? 17分钟 1 & 2 = 2分 1返回 +1分 5 & 10 = 10分 2返回 +2分 1 &…… [/Quote] 应该是14分钟。 首先 , 10和5一起过去,10分钟。 在1跑过来拿电筒,来回2分钟。 在和2一起过来,2分钟。 14分钟。
晕 差一点被你误导了,1没电筒怎么跑???
wslejeff 2013-02-28
  • 打赏
  • 举报
回复
7.某天晚上,有4个人要过桥,都在桥的一边,有一个手电筒,一次最多过两个人, 不管几个人过桥都要手电筒,每个人过桥时间为1,2,5,10.请问他们最快多久可以过桥, 用什么方案? 1把10抱过去 1分钟 1回来 1分钟 1把 5抱过去 1分钟 1回来 1分钟 1把 2抱过去 1分钟
风vs雷 2012-12-14
  • 打赏
  • 举报
回复
第一题应该是字典排序吧。stl中有一个函数的事情。
speeder 2012-12-11
  • 打赏
  • 举报
回复
全是算法之类的,挺难。
ntwarren 2012-12-01
  • 打赏
  • 举报
回复
引用 54 楼 clever101 的回复:
1. 一个数组{3,4,5,6,3},请输出这个数组的全排列,比如34563、43563、33456...。 全排序算法就是列举一些字符的所有排列顺序的一种算法,比较典型的采用递归法。下面是一种简单的全排序算法。 C/C++ code??123456789101112131415161718192021222324252627282930void ……
考虑到重复的问题,对你的代码进行了改进


void Perm(char list[], int k, int m);
int total = 0 ;
int _tmain(int argc, _TCHAR* argv[])
{
	char s[]="34567";
	Perm(s,0,4);
	printf("%d",total);
	char b;
	scanf(&b);
	return 0;
}

void Swap(char* a, char* b)
{// 交换a和b
	char temp;
	temp = *a;
	*a = *b;
	*b = temp;
}

bool isTrack(char list[], int k, int m){
	if(m>k+1){
		for(int i = k+1;i<m;i++){
			if(list[i] == list[m])
				return true;
		}
	}
	return false;
}



void Perm(char list[], int k, int m)
{ //生成list [k:m ]的所有排列方式
	int i;
	if (k == m) {//输出一个排列方式
		for (i = 0; i <= m; i++)
			putchar(list[i]);
		putchar('\n');
		total++;
	}
	else // list[k:m ]有多个排列方式
		// 递归地产生这些排列方式
		for (i=k; i <= m; i++) {
			if((list[i] != list[k] && !isTrack(list,k,i)) || i==k){
				Swap (&list[k], &list[i]);
				Perm (list, k+1, m);
				Swap (&list [k], &list [i]);
			}
		}
}
小吕子 2012-12-01
  • 打赏
  • 举报
回复
引用 95 楼 jinmanni 的回复:
引用 18 楼 pengliangchina 的回复:引用 14 楼 的回复:引用 11 楼 的回复: 引用 2 楼 的回复: 7.某天晚上,有4个人要过桥,都在桥的一边,有一个手电筒,一次最多过两个人, 不管几个人过桥都要手电筒,每个人过桥时间为1,2,5,10.请问他们最快多久可以过桥, 用什么方案? 17分钟 1 &amp;……
mark一下!
mrliu0905 2012-11-30
  • 打赏
  • 举报
回复
怎么都是算法。。。好烦啊。。就讨厌算法。。数学不好。。。
Alanzhou007 2012-11-29
  • 打赏
  • 举报
回复
很牛B的题目啊
JWloveWTT1023 2012-11-29
  • 打赏
  • 举报
回复
好有才华啊~!!!!!!!!!!!!!!!!!!!!!!!很好很强大
fkseraph 2012-11-28
  • 打赏
  • 举报
回复
进来参考个大神们的解题方法。
WuAndMatlab 2012-11-28
  • 打赏
  • 举报
回复
好了不起啊!了不起!!!!!
yuidui 2012-11-28
  • 打赏
  • 举报
回复
菜鸟路过收了,借鉴,
oMrwang123456789 2012-11-28
  • 打赏
  • 举报
回复
进来学习一下。
self001 2012-11-27
  • 打赏
  • 举报
回复
lsadm_11154 2012-11-27
  • 打赏
  • 举报
回复
好贴,受教了,刚入行的小白路过~
haizige19850 2012-11-27
  • 打赏
  • 举报
回复
1、全排列+去重处理 2、快排变种 复杂度约为o(2n)=o(n) 3、用位图 类似计数排序 所需空间为10^7/8B 大概1MB多<2MB 复杂度o(n)
ztanhui 2012-11-27
  • 打赏
  • 举报
回复
感觉也不是很难嘛
s4ms4m 2012-11-26
  • 打赏
  • 举报
回复
mark,记下来,看看有用!
诚朴勇毅 2012-11-26
  • 打赏
  • 举报
回复
这些题目都很常见
加载更多回复(123)
│ C++面试题大全.doc │ c与c++面试题汇总.doc │ java面试题集.txt │ ├─C++笔试题 │ (1)C,C++经典问题,及面试笔试题 .txt │ (2)cc++.txt │ (3)笔试题2.doc │ (4)笔试题.doc │ (5)想成为嵌入式程序员应知道的0x10个基本问题.txt │ (6)网络.操作系统.数据库.txt │ (7)如果你觉得你够牛就回答这几个问题.txt │ (8)以上文档中的明显错误.txt │ c,c++笔试.txt │ CC++笔试题系列.txt │ IT职场中外企面试最爱提的问题TOP10 .txt │ memset.memmove.strcmp.txt │ TC使用.txt │ 介绍自己的优缺点有技巧 .txt │ 多线程编程之一——问题提出.txt │ 多线程编程之三——线程间通讯.txt │ 多线程编程之二——MFC中的多线开发.txt │ 多线程编程之四——线程的同步.txt │ 排序.txt │ 最常问问题和最佳答案.txt │ 求职信 .txt │ 深入分析Windows和Linux动态库应用异同 .txt │ 用VC++5.0 定 制 和 调 用 动 态 链 接 库 .txt │ 聘面谈记录切忌随心所欲.txt │ 英语面试.txt │ 范式间区别.txt │ 金山_人力资源试题库_软件工程.doc │ 金山问题.txt │ 面试常见37个问题.doc │ 面试常见问题解析 .txt │ 面试应答中最忌讳的是什么.doc │ ├─java笔试题大集合及答案(另附各大公司笔试题) │ EJB方面.doc │ Java基础方面.doc │ 代码与编程题.doc │ 应聘Java笔试时可能出现问题及其答案.doc │ 求职笔试大全.pdf │ 用户必读.txt │ 线程编程方面.doc │ └─面试题java │ Core Javaceshiti.doc │ c_c++_mianshi.txt │ j2ee面试笔试题大汇总.txt │ java中的易混问题收集 -- 最大的IT资源网.txt │ JAVA常见问题.txt │ Java常见问题集锦 -- 最大的IT资源网.txt │ JAVA问题.txt │ Java陷阱一箩筐----面试题集.doc │ Java陷阱一箩筐----面试题集[zt].txt │ JAVA面试题.txt │ JAVA面试题集(1) -- 最大的IT资源网.txt │ JAVA面试题集(2) -- 最大的IT资源网.txt │ JAVA面试题集(3) -- 最大的IT资源网.txt │ JAVA面试题集(4) -- 最大的IT资源网.txt │ JAVA面试题集(5) -- 最大的IT资源网.txt │ JAVA面试题集(6) -- 最大的IT资源网.txt │ JAVA面试题集(7) -- 最大的IT资源网.txt │ JAVA面试题集(8) -- 最大的IT资源网.txt │ mian shi ti da an 2.txt │ mian shi ti da an1.txt │ mian shi ti.txt │ mianShi.pdf │ mst.pdf │ 追MM与Java的23种设计模式.txt │ 面试题.doc │ └─mianshiti 1.txt 2.txt 3.txt 4.txt 5.txt 6.txt 7.txt 8.txt Java_util_package.txt java_util_test.txt

33,010

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧