题目1
代码:
package day2;
import java.util.Arrays;
public class day2_test1 {
public static int search(int[] nums, int target) {
Arrays.sort(nums);
for(int i=0;i< nums.length;i++){
if(nums[i] == target){
return i;
}
}
return -1;
}
public static void main(String[] args) {
int[] nums ={-1,0,3,5,9,12};
int target = 2;
System.out.println(search(nums, target));
}
}
运行截图:
题目2
代码:
package day2;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class day2_test2 {
public static List<Integer> targetIndices(int[] nums, int target) {
List<Integer> result = new ArrayList<>();
Arrays.sort(nums);
for (int i = 0; i < nums.length; i++) {
if(nums[i] == target){
result.add(i);
}
}
return result;
}
public static void main(String[] args) {
int[] nums = {1,2,5,2,3};
List<Integer> li1 = targetIndices(nums,4);
List<Integer> li2 = targetIndices(nums,5);
List<Integer> li3 = targetIndices(nums,3);
List<Integer> li4 = targetIndices(nums,2);
System.out.println(li1);
System.out.println(li2);
System.out.println(li3);
System.out.println(li4);
}
}
运行截图:
题目3
代码:
package day2;
import java.util.HashMap;
public class day2_test3 {
public static int findDuplicate(int[] nums) {
int result =0;
for(int i=0; i< nums.length; i++){
for(int j =0; j< nums.length;j++){
if(i == j){
continue;
}
if(nums[i] == nums[j]){
result = nums[i];
}
}
}
return result;
}
public static void main(String[] args) {
int[] nums = {1,3,4,2,2};
int[] nums1 = {3,1,3,4,2};
System.out.println(findDuplicate(nums));
System.out.println(findDuplicate(nums1));
}
}
运行截图:
题目4
代码:
package day2;
import java.util.ArrayList;
public class day_test4 {
// 左 = 右: index += 1
// 左 > 右:删除get(0),index = 0
// 右 > 左:删除get(array.size() - 1),index = 0
public static int solute(int s, int[] nums){
int result = 0;
int sum = 0;
int index = 0;
ArrayList<Integer> array = new ArrayList<>();
for(int i=0; i< nums.length; i++){
array.add(nums[i]);
}
while(!(sum == s)){
sum = 0;
for(int num:array){
sum += num;
}
if(sum < s){
return -1;
}
if(array.get(index) == array.get(array.size() - 1 -index)){
index += 1;
continue;
} else if (array.get(index) > array.get(array.size() - 1 -index)){
array.remove(0);
result += 1;
index = 0;
} else if (array.get(index) < array.get(array.size() - 1 -index)) {
array.remove(array.size() - 1);
result += 1;
index = 0;
}
}
return result;
}
public static void main(String[] args) {
int[] nums = {0,1,0,1,1,1,0,0,1};
int[] nums1 = {1,1,0,0,1,0,0,1,1,0,0,0,0,0,1,1};
System.out.println(solute(3,nums));
System.out.println(solute(2,nums1));
}
}
运行截图: