试题详情
- 简答题已知数组A[n]中的元素为整型,设计算法将其调整为左右两部分,左边所有元素为奇数,右边所有元素为偶数,并要求算法的时间复杂度为O(n)。
- 从数组的两端向中间比较,设置两个变量i和j,初始时i=0,j=n-1,若A[i]为偶数并且A[j]为奇数,则将A[i]与A[j]交换。具体算法如下:
分析算法,两层循环将数组扫描一遍,所以,时间复杂度为O(n)。 关注下方微信公众号,在线模考后查看
热门试题
- 设有6个结点的无向图,该图至少应有()条
- 对线性表进行二分查找时,要求线性表必须以
- 在存储数据时,通常不仅要存储各数据元素的
- 函数实现串的模式匹配算法,请在空格处将算
- 具有6个顶点的无向图至少应用()条边才能
- 以行为主序或以列为主序对于多维数组的存储
- 栈的使用非常广泛,在进制转换、括号匹配、
- 顺序表的存储结构属于()。
- 有一个长度为8的有序表,按折半查找对该表
- 数据结构里,每个结点都访问,且只访问一次
- 二维数组A的元素都是6个字符组成的串,行
- 在平均情况下,快速排序法最快,堆积排序法
- 试写一算法实现对不带头结点的单链表H进行
- 二叉树中含有n(n>=0)个结点组成,若
- 假定在一棵二叉树中,双分支结点数为15个
- 一组权值,可以唯一构造出一棵哈夫曼树
- 结构中的数据元素存在一对多的关系称为()
- 算法的时间复杂度取决于()。
- 已知关键序列5,8,12,19,28,2
- 已知一个B+树有5个叶子结点,每个叶子结