对n个元素值分别为-1、O或1的整型数组A进行升序排序的算法描述如下:统计A中-1、0和1的个数,设分别为n1、n2和n3,然后将A中的前n1个元素赋值为-1,第n1+1到n1+n2个元素赋值为O,最后n3个元素赋值为1。该算法的时间复杂度和空间复杂度分别为()。
A.A B.B C.C D.D
单项选择题在有n个无序无重复元素值的数组中查找第i小的数的算法描述如下:任意取一个元素r,用划分操作确定其在数组中的位置,假设元素r为第k小的数。若i等于k,则返回该元素值;若i小于k,则在划分的前半部分递归进行划分操作找第i小的数;否则在划分的后半部分递归进行划分操作找第k-i小的数。该算法是一种基于()策略的算法。
A.分治 B.动态规划 C.贪心 D.回溯
单项选择题迪杰斯特拉(Dijkstra)算法用于求解图上的单源点最短路径。该算法按路径长度递增次序产生最短路径,本质上说,该算法是一种基于()策略的算法。
单项选择题()是由权值集合{8,5,6,2}构造的哈夫曼树(最优二叉树)。
单项选择题一棵满二叉树,其每一层结点个数都达到最大值,对其中的结点从1开始顺序编号,即根结点编号为1,其左、右孩子结点编号分别为2和3,再下一层从左到右的编号为4、5、6、7,依此类推,每一层都从左到右依次编号,直到最后的叶子结点层为止,则用()可判定编号为m和n的两个结点是否在同一层。
单项选择题无向图中一个顶点的度是指图中与该顶点相邻接的顶点数。若无向图G 中的顶点数为n,边数为e,则所有顶点的度数之和为()。
A.n*e B.n+e C.2n D.2e