JAVA111 HashMap Leecode:1 两数之和 3 无重复字符串的长度

奇怪了,换台电脑就没报错,之前那台一直类名报错

HashMap
import java.util.Map;public class HashMap {public void main() {Map<String, Integer> a = new java.util.HashMap<>();a.put("1", 2);System.out.println(a.get("1"));}}

import java.util.Map;public class HashMap {public void main() {Map<String, Integer> a = new java.util.HashMap<>();a.put("1", 2);System.out.println(a.get("0"));}}

import java.util.Map;public class HashMap {public void main() {Map<String, Integer> a = new java.util.HashMap<>();a.put("kkkkkk", 2);System.out.println(a.get(2));}}

import java.util.Map;public class HashMap {public void main() {Map<String, Integer> a = new java.util.HashMap<>();a.put("kkkkkk", 2);System.out.println(a.get("2"));}}
import java.util.Map;public class HashMap {public void main() {Map<String, Integer> a = new java.util.HashMap<>();a.put("kkkkkk", 2);System.out.println(a.get("kkkkkk"));}}

两数之和
throw new IllegalArgumentException("No two sum solution");

时间复杂度是o1,就是一下子就能找到
import java.util.HashMap;
import java.util.Map;public class Solution2 {public int[] twoSum(int[] nums, int target) {
//定义hashmapMap<Integer,Integer> map=new HashMap<>();//遍历for (int i = 0; i < nums.length; i++) {if (map.containsKey(target-nums[i])){//返回数组,这里还不太会//重新定义了一个数组,直接返回中定义return new int[]{map.get(target-nums[i]),i};}//把没找到的数放进去,不符合条件的放进去,把当前遍历到的放进去map.put(nums[i],i);}//还差什么,为什么标红,为什么一定要throw掉//没定义void 就必须有返回值,定义了int[] twoSum,必须返回个数组throw new IllegalArgumentException("no two sum solution");}
}


什么叫类型实参




class Solution {public int[] twoSum(int[] nums, int target) {//定义map类Map<Integer,Integer> map=new HashMap<>();//遍历for(int i=0;i<nums.length;i++){//调用map.contains方法查找target-nums[i]的元素if(map.containsKey(target-nums[i])){//如果存在,返回一个数组,把value值返回,一个值是map.get(target-num[i])//新建一个数组,还不太会return new int[]{map.get(target-nums[i]),i};}map.put(nums[i],i);}//定义了int[] 需要返回[] 这里把错误抛给计算机throw new IllegalArgumentException("no two sum solution");}}
//初始化数组
//先想思路,看题解,思路对不对,再写
//很一样直接开始写
//没思路直接看题解
3.给定一个字符串 s ,请你找出其中不含有重复字符的 最长 子串 的长度
给定一个字符串 s ,请你找出其中不含有重复字符的 最长 子串 的长度
思路:
遍历字符串,比较前后,一样计数,不一样重写开始;修正:一样 长度为1 ,不一样长度加一,一样,停止,返回上个长度
基元类型

