(一)
两数之和:输入一个数组和一个数
目的是从该数组中找到两个元素,保证两位元素之和等于输入的数字
返回这两个元素的下标位置,不能重复。
若没有找到,则返回[-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();
}
}