华为慧通面试题


Posted in 面试题 onSeptember 11, 2012
//华为面试题: 有1,2,….一直到n的无序数组,求排序算法,
//并且要求时间复杂度为O(n),空间复杂度O(1),使用交换,而且一次只能交换两个数.
//评论:要使时间复杂度为O(n),那一定是特殊数组,否则不可能实现,
//题目给出数组为1,2,….n,那么可以在这上面做文章,把数组的值和数组的下标联系起来,把a[i]的值给a[a[i]-1],比如a[3]=5,则把5赋给a[5-1]也就是a[4]=5,则符合要求了。

#i nclude
void main()
{ int a[10]={3,6,8,4,2,9,7,1,5,10};//{6,3,4,8,2,9,7,1,5,10}; 这个数例不行
int b,i;
for(i=0;i {
b=a[a[i]-1];
a[a[i]-1]=a[i];
a[i]=b;
}
for(i=0;i printf(“%d “,a[i]);
}

#i nclude
#i nclude

int print( int*, int );
int swap( int&, int& );
int main()
{
int *a, n, i;
scanf( “%d”, &n );
a = ( int* ) malloc ( ( n + 1 ) * sizeof( int ) );
for( i = 1; i a[i] = i;
for( i = 1; i swap( a[i], a[rand()%n+1] );
print( a, n );
for( i = 1; i {
while( a[i] != i )
swap( a[i], a[a[i]] );
}
print( a, n );
return 0;
}
int swap( int &i, int &j )
{
int temp = i;
i = j;
j = temp;
return 0;
}
int print( int a[], int n )
{
int i;
for( i = 1; i printf( “%4d”, a[i] );
printf( “\n” );
return 0;
}

//惠通面试题:两个字符串,s,t;把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串

void insert(char *s, char *t, int i);

void insert(char *s, char *t, int i)
{
char *q = t;
char *p = s;
if(q == NULL)return;//子串为空
while(*p!=’\0′)
{
p++;
} //移到目标串串尾
while(*q!=’\0′)
{
*p = *q;
p++;
q++;
}//插入
*p = ‘\0′;
}

Tags in this post...

面试题 相关文章推荐
可以在一个PHP文件里面include另外一个PHP文件两次吗
May 22 面试题
描述一下JVM加载class文件的原理机制
Dec 08 面试题
写一个方法1000的阶乘
Nov 21 面试题
经典c++面试题二
Aug 14 面试题
经典c++面试题六
Jan 18 面试题
数据库基础的一些面试题
Feb 25 面试题
如何查找和删除数据库中的重复数据
Nov 05 面试题
Oracle的内存结构(Memory structures)
Jun 10 面试题
使用索引有什么好处
Jul 27 面试题
.net面试题
Dec 22 面试题
Python面试题:Python是如何进行内存管理的
Aug 04 面试题
介绍JAVA 中的Collection FrameWork(及如何写自己的数据结构)
Oct 31 面试题
int *p=NULL和*p= NULL有什么区别
Oct 23 #面试题
声明struct x1 { . . . }; 和typedef struct { . . . }x2;有什么不同
Jun 02 #面试题
函数指针的定义是什么
Aug 14 #面试题
一个C/C++编程面试题
Nov 10 #面试题
Sony C++笔试题
Mar 10 #面试题
VC++笔试题
Oct 13 #面试题
写出程序把一个链表中的接点顺序倒排
Apr 28 #面试题
You might like
PHP实现权限管理功能示例
2017/09/22 PHP
PHP时间处理类操作示例
2018/09/05 PHP
Thinkphp5框架ajax接口实现方法分析
2019/08/28 PHP
filemanage功能中用到的common.js
2007/04/08 Javascript
javascript 构建一个xmlhttp对象池合理创建和使用xmlhttp对象
2010/01/15 Javascript
使用apply方法处理数组的三个技巧[译]
2012/09/20 Javascript
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
jQuery学习笔记之jQuery.fn.init()的参数分析
2014/06/09 Javascript
JS实现的用来对比两个用指定分隔符分割的字符串是否相同
2014/09/19 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
每天一篇javascript学习小结(RegExp对象)
2015/11/17 Javascript
Uploadify上传文件方法
2016/03/16 Javascript
深入理解JS正则表达式---分组
2016/07/18 Javascript
js html5 css俄罗斯方块游戏再现
2016/10/17 Javascript
angular4中关于表单的校验示例
2017/10/16 Javascript
详解VueJS应用中管理用户权限
2018/02/02 Javascript
解决vue打包项目后刷新404的问题
2018/03/06 Javascript
小程序点击图片实现自动播放视频
2020/05/29 Javascript
vue组件定义,全局、局部组件,配合模板及动态组件功能示例
2019/03/19 Javascript
使用layer.msg 时间设置不起作用的解决方法
2019/09/12 Javascript
js编写简易的计算器
2020/07/29 Javascript
解决ant Design中Select设置initialValue时的大坑
2020/10/29 Javascript
python实现获取序列中最小的几个元素
2014/09/25 Python
如何解决django配置settings时遇到Could not import settings 'conf.local'
2014/11/18 Python
Python中用于转换字母为小写的lower()方法使用简介
2015/05/19 Python
利用Tkinter(python3.6)实现一个简单计算器
2017/12/21 Python
Python实现接受任意个数参数的函数方法
2018/04/21 Python
python实现对指定字符串补足固定长度倍数截断输出的方法
2018/11/15 Python
python禁用键鼠与提权代码实例
2019/08/16 Python
Pytorch中Tensor与各种图像格式的相互转化详解
2019/12/26 Python
教师产假请假条
2014/04/10 职场文书
五好文明家庭事迹材料
2014/12/20 职场文书
试用期自我评价范文
2015/03/10 职场文书
村主任当选感言
2015/08/01 职场文书
确保减税降费落地生根,用实实在在措施
2019/07/19 职场文书
零基础学java之带返回值的方法的定义和调用
2022/04/10 Java/Android