| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5966 人关注过本帖
标题:一道思科的笔试题
只看楼主 加入收藏
百年不亮
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:789
专家分:0
注 册:2006-4-14
收藏
得分:0 
吃饭去,你们继续,我下午来看最好的algorithm
2007-08-23 11:51
lishizelibin
Rank: 2
等 级:论坛游民
帖 子:513
专家分:41
注 册:2007-5-10
收藏
得分:0 
int do_dup(int a[],int N)
{
int i = 0;
int num = 0;
int *count =(int*)malloc(N*sizeof(int));
memset(count,0,N*sizeof(int));
for(i=0;i<N;i++)
{
if(2==(++count[a[i]]))
{
num=a[i];
break;
}
}
free(count);
return num;
}
高人写的据说不错!
下面有一个短写法:
int do_dup(int a[],int N)
{
int n=0;
for( int i=0;i<N;n+=a[i]-i++ );
return n;
}

在vc6下,更可以写成:
int do_dup(int a[],int N)
{
for( int i=0, int n=0;i<N;n+=a[i]-i++ );
return n;
}

注:我只负责贴出给大家看看,交流学习

[此贴子已经被作者于2007-8-23 12:15:00编辑过]


惟有学习不断的学习!
2007-08-23 12:11
酒肉弥勒佛
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:399
专家分:0
注 册:2006-6-6
收藏
得分:0 
以下是引用lishizelibin在2007-8-23 11:00:14的发言:

#include<stdio.h>
#define N 10
void main()
{
int a[N]={1,2,3,4,5,6,7,7,8,9};
int pi[N]={0};
int key=0;
for(int i=0;i<N;i++)
{
if(pi[a[i]]==0)
pi[a[i]]=a[i];
else
{
key=a[i];
break;
}
}

printf("多余的数字是%d\n",key);
}
[我不喜欢…………]




有bug吧,如果我a[]中的一个数字大于N的值,那就不对了


编程是为了提高效率,好的程序是因为他的高效;在编程的道路上,永远追逐高效的算法
2007-08-23 16:33
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
楼上请看题目吧
2007-08-23 16:38
酒肉弥勒佛
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:399
专家分:0
注 册:2006-6-6
收藏
得分:0 
哦,要是这样的话,那就可以这样做啊,把理想状态下没有重复的数组的值加起来得到a1,在把实际用个重复的数组的值加起来得到a2,那重复的数就是a[N](l理想状态下最大的数)-(a1-a2)啊
这个不是更简单?

编程是为了提高效率,好的程序是因为他的高效;在编程的道路上,永远追逐高效的算法
2007-08-23 16:53
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 
这样可以么
#include<stdio.h>
#define N 12
main()
{
int a[]={1,2,3,4,1,5,6,7,7,8,9,2},b[N]={0},i=0;
for(i=0;i<N;i++)
if(b[a[i]])
printf("重复的数字是%d\n",a[i]);
else b[a[i]]=1;
}

[此贴子已经被作者于2007-8-23 19:24:46编辑过]


羊肉串 葡萄干 哈密瓜!!
2007-08-23 19:24
linjj7
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-8-23
收藏
得分:0 
2007-08-23 19:46
ouyang1014
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-1
收藏
得分:0 

还真的是看不懂  这样也能?

2007-08-23 21:56
crackerwang
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:833
专家分:0
注 册:2007-2-14
收藏
得分:0 
32楼的和福尔磨丝的思路不是样的么?

2007-08-23 22:28
zhangfei
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-24
收藏
得分:0 
hash
2007-08-24 01:32
快速回复:一道思科的笔试题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036733 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved