代码随想录训练营Day6| 242、349、202、1

news/2024/10/18 9:23:12/

242. 有效的字母异位词

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。

class Solution {public boolean isAnagram(String s, String t) {int[] record = new int[26];for(int i = 0; i < s.length(); i++){record[s.charAt(i) -'a']++;}for(int j = 0; j < t.length(); j++){record[t.charAt(j) - 'a']--;}for(int i = 0; i < record.length; i++){if(record[i] != 0){return false;}}return true;}
}

349. 两个数组的交集

给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。

class Solution {public int[] intersection(int[] nums1, int[] nums2) {if(nums1 == null || nums2 == null){return new int[0];}Set<Integer> set = new HashSet<>();Set<Integer> reset = new HashSet<>();for(int i : nums1){set.add(i);}for(int j : nums2){if(set.contains(j)){reset.add(j);}}int[] arr = new int[reset.size()];int m = 0;for(int k : reset){arr[m++] = k;}return arr;}
}

202. 快乐数

编写一个算法来判断一个数 n 是不是快乐数。
「快乐数」 定义为:
对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。
然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。
如果这个过程结果为 1,那么这个数就是快乐数。
如果 n 是快乐数就返回 true ;不是,则返回 false 。

class Solution {public boolean isHappy(int n) {Set<Integer> set = new HashSet<>();while(n != 1 && !set.contains(n)){set.add(n);n = P(n);}return n == 1;}public int P(int n){int res = 0;while(n>0){int temp = n%10;n = n/10;res = res + temp*temp;}return res;}
}

1. 两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。
你可以按任意顺序返回答案。

什么时候使用哈希法:当我们需要查询一个元素是否出现过,或者一个元素是否在集合里的时候,就要第一时间想到哈希法。

class Solution {public int[] twoSum(int[] nums, int target) {int[] res = new int[2];if(nums.length < 2){return res;}Map<Integer, Integer> map = new HashMap<>();for(int i = 0; i < nums.length; i++){int temp = target - nums[i];if(map.containsKey(temp)){res[0] = i;res[1] = map.get(temp);return res;}map.put(nums[i],i);}return res;}
}

http://www.ppmy.cn/news/55534.html

相关文章

aop执行顺序

1.执行系统默认的expose 啥也不做&#xff0c;回到拦截链上 2.执行throwing 啥也不做&#xff0c;回到拦截链上&#xff0c;如果有异常&#xff0c;然后不会异常&#xff0c;又抛出异常 3. 执行afterreturing 又回到拦截链上&#xff0c;然后获取到返回值。 4.执行after 回到…

徐亚波博士:2023重构消费信心,拥抱不确定性

近日&#xff0c;数说故事携手GDMS开启的2023 D3智能营销峰会在广州圆满举行。与会期间&#xff0c;网易态度营销特邀数说故事创始人兼CEO徐亚波博士进行深度采访&#xff0c;一同共探营销增长之道。 以下是网易态度营销对数说故事创始人兼CEO徐亚波博士的采访实录&#xff1a;…

【Python】BeautifulSoup

一、什么是BeautifulSoup Beautiful Soup 简称 BS4&#xff08;其中 4 表示版本号&#xff09;是一个 Python 第三方库&#xff0c;它可以从 HTML 或 XML 文档中快速地提取指定的数据。 二、BS4下载安装 点击最下面的终端进如命令行界面 &#xff08;进入成功界面&#xff1a;&…

Spring 管理 Bean-IOC--基于 XML 配置bean

目录 Spring 管理 Bean-IOC--基于 XML 配置bean Spring 配置/管理 bean 介绍 Bean 管理包括两方面 Bean 配置方式 基于 XML 配置 bean 通过 spring 的ioc 容器, 获取一个bean 对象 获取 bean 的方式&#xff1a;按类型 Monster类 注意 xml配置 细节说明 通过构造器配置…

函数(详解)——C语言

Hello&#xff0c;友友们前段时间忙拖更了这么久&#xff0c;趁着五一假期好好卷上一波哈哈哈。好的&#xff0c;我们本期主要对C语言中的函数进行讲解。 1.什么是函数 在数学中也常常用到函数&#xff0c;但你对C语言中的函数有了解吗&#xff1f; 在C语言中函数是一段可重…

【计算机网络详解】——物理层(学习笔记)

&#x1f4d6; 前言&#xff1a;今天我们将一起探索电脑网络中最基础的一层&#xff0c;物理层。从摩斯电码到光纤传输的高速互联网时代&#xff0c;物理层在不断发展和创新。让我们一起深入到网络通讯的本质&#xff0c;探究物理层与我们的日常联系密不可分的原因。 目录 &…

java学习需要掌握的几个细节点,分享一下我找工作的技巧

现在想跟大家聊聊最近的一些想法和状态。最近学习的时间比较少&#xff0c;几乎没怎么学。没有像以前学的那么卷了&#xff0c;可以说。主要是心态受到了一些影响&#xff0c;比如网上看到说招个岗位几百比1这种。 另一个是自己的感受&#xff0c;现在投简历的回应包括能不能投…

Java中的String、StringBuffer和StringBuilder

文章目录 Java中的String、StringBuffer和StringBuilderString 类型特点操作 StringBuffer 类型特点操作 StringBuilder 类型特点操作 总结代码实践注意事项 Java中的String、StringBuffer和StringBuilder 在 Java 中&#xff0c;字符串是最常用的数据类型之一。 Java 中有三种…