(一)
两数之和:输入一个数组和一个数
目的是从该数组中找到两个元素,保证两位元素之和等于输入的数字
返回这两个元素的下标位置,不能重复。
若没有找到,则返回[-1,-1]
直接上代码:
package com.apesource.test01;
import java.util.Arrays;
public class Test0114 {
public static void main(String[] args) {
int[] array01 = twoSum(new int[] {2,7,11,13},9);
System.out.println(Arrays.toString(array01));
}
public static int[] twoSum(int[] source,int target) {
int i=0,k = 0,n = source.length;
int[] result = {-1,-1};
begin:
for(i=0;i<n;i++) {
for(k=i+1;k<n;k++) {
if(source[i] + source[i+1]==target) {
result[0] = i;
result[1] = k;
break begin;
}
}
}
return result;
}
}
(二)
转化十进制整数为二进制字符串
代码:
public class Test0115 {
public static void main(String[] args) {
int number = 23;
String result = toBinaryString (number);
System.out.println(result);
}
public static String toBinaryString (int num) {
StringBuilder sb = new StringBuilder();
while(num != 0) {
sb.append(num%2);
num /= 2;
}
sb.reverse();
return sb.toString();
}
}
这两段代码分别实现了数组中寻找两数之和等于目标值的下标,以及将十进制整数转化为二进制字符串。第一段代码通过双重循环查找数组中相加等于目标值的元素并返回其下标;第二段代码使用StringBuilder动态构建二进制字符串,并通过反转确保高位在前。
462

被折叠的 条评论
为什么被折叠?



