- 博客(6)
- 收藏
- 关注
原创 统计一个只包含大写字母的字符串中顺序对的数量, 其中顺序对的定义为前面的字符小后面的字符大.
统计一个只包含大写字母的字符串中顺序对的数量, 其中顺序对的定义为前面的字符小后面的字符大.例如在"ABC"中的顺序对为3, 因为有AB, AC, BC.这个方法由于时间复杂度为O(n^2),所以会超时。这个算法的时间复杂度为O(n)
2024-03-28 21:02:24
156
原创 用C语言将n转换为16进制,28进制及其他进制转换问题
7*6=42,然后分别将选项中9,10,12,18带入,即42%9=6;42%18=6.这样就可以排除10,即选项 C,但还是无法确定最终的正确答案,想要确定最终答案就要进一步运算。解:这道题首先考虑用一个简单的方法看看能不能判断出来,将两个数的各位相乘,然后将选项带进去进行取余,看看结果是不是等号右边数字的个位数,对于这道题来说即为。1.从键盘获取一个正整数,如果把它转为16进制的数字,那么它是一个几位数呢?2.假设在n进制下,下面的等式成立,567*456=150216,n的值是( D )
2024-03-19 22:46:12
191
原创 给出在有序数组a中查找数据元素x是否存在的递归算法 折半查找的循环结构程序
BSearch(a, x, 0,7)的递归调用过程如图6-3所示,其中,实箭头表示函数调用,虚箭头表示函数的返回值。给出在有序数组a中查找数据元素x是否存在的递归算法,并给出如图6-1所示实际数据的递归算法的执行过程。那么折半查找的循环结构程序怎么写呢?
2024-03-13 09:31:31
388
原创 汉诺塔问题的递归求解算法
基本思想:1个盘子的汉诺塔问题可以直接移动。n个盘子的汉诺塔问题可递归表示为,首先把上边的n-1个盘子从A柱移到B柱,然后把最下面的一个盘子从A柱移到C柱,最后把移到B柱的n-1个盘子再移到C柱。(3)在移动过程中盘可以放在A,B,C的任意一个柱子上。(2)移动过程中大盘子不能放在小盘子上面;问题分析:可以用递归方法求解n个盘子的汉诺塔问题。(1)一次只能移动一个盘子;
2024-03-13 09:16:42
503
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人