
数组
乐小琛
大学毕业生
展开
-
大数加法
题目:以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。(字符串长度不大于100000,保证字符串仅由'0'~'9'这10种字符组成)算法思想:将字符串类型改为数组char1于char2(方便对字符串的每一位进行计算操作),引进carry来记录是否有进位(用除法取整来实现),将char1与char2的数据类型分别由char转换为int型,在进行计算,用rem记录余数,carry记录商(及进位),循环操作,直至i,j,carry均为0即可。注:用到了StringBuffer的ap原创 2021-03-29 11:41:01 · 186 阅读 · 1 评论 -
子数组最大乘积
题目:给定一个double类型的数组arr,其中的元素可正可负可0,返回子数组累乘的最大乘积。例如:[-2.5,4,0,3,0.5,8,-1]其中子数组[3,0.5,8]的乘积最大,为12;算法思想:创建新的double型变量:max,min,MAX。当数组记录到i位置时,此时max记录(arr[i],max*arr[i],min*arr[i])其中的最大值。min记录(arr[i],max*arr[i],min*arr[i])中的最小值,记录最小值的目的是:当min为负数时且arr[i]为负数原创 2021-03-10 22:03:01 · 643 阅读 · 0 评论 -
调整数组,使奇数在偶数前面
题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。算法思想:采用空间换时间的方法(较为麻烦,但容易理解),创建一个新数组a,遍历两次原数组,第一次遍历将奇数存入新数组a中,第二次遍历将偶数存入a中。...原创 2021-03-09 21:39:30 · 179 阅读 · 0 评论