当前位置: 首页 > news >正文

备战秋招day4

算法

242. 有效的字母异位词

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

349. 两个数组的交集

class Solution {public int[] intersection(int[] nums1, int[] nums2) {if (nums1 == null || nums1.length == 0 || nums2 == null || nums2.length == 0) {return new int[0];}Set<Integer> set1 = new HashSet<>();Set<Integer> set2 = new HashSet<>();for(int i : nums1){set1.add(i);}//拿2出来判断for(int i : nums2){if(set1.contains(i)){set2.add(i);}}int[] res = new int[set2.size()];int index = 0;for(int i : set2){res[index++] = i;}return res;}
}

202. 快乐数

class Solution {public boolean isHappy(int n) {//题干说了可能会无限循环://结果一旦出现重复,说明结果集已经确定,直到重复都没有true说明不是快乐数Set<Integer> set = new HashSet<>();while(n!=1 && !set.contains(n)){set.add(n);n = newNumber(n);}return n==1;}public int newNumber(int n){//做新数字的计算int res = 0;while(n > 0){//取出每一位int tmp = n%10;res += tmp*tmp;n/=10;}return res;}
}

1. 两数之和

class Solution {//我们可以使用map来解决public int[] twoSum(int[] nums, int target) {int res[] = new int[2];if(nums == null || nums.length < 2){return new int[]{0,0};}HashMap<Integer, Integer> map = new HashMap<>();for(int i = 0;i<nums.length;i++){int tmp = target - nums[i];if(map.get(tmp)!=null){res[0] = i;res[1] = map.get(tmp);}else{map.put(nums[i],i);}}return res;}
}

454. 四数相加 II

class Solution {public int fourSumCount(int[] nums1, int[] nums2, int[] nums3, int[] nums4) {int res = 0;//题目中给出的用例可以发现,允许重复情况出现HashMap<Integer,Integer> map1 = new HashMap<>();for(int i:nums1){for(int j:nums2){int sum = i+j;map1.put(sum,map1.getOrDefault(sum,0)+1);}}for(int i:nums3){for(int j:nums4){//找对应值即可res+=map1.getOrDefault(0-i-j,0);}}return res;}
}

383. 赎金信

class Solution {public boolean canConstruct(String ransomNote, String magazine) {//先统计magazineint[] m = new int[26];for(char a:magazine.toCharArray()){m[a-'a']++;}for(char a:ransomNote.toCharArray()){m[a-'a']--;if(m[a-'a']<0){return false;}}return true;}
}

15. 三数之和

class Solution {public List<List<Integer>> threeSum(int[] nums) {//双指针来做,先排序List<List<Integer>> res = new ArrayList<>();Arrays.sort(nums);//隐藏条件for(int i = 0;i<nums.length;i++){//如果当前已经大于0,则后面一定没有符合条件if(nums[i]>0){break;}//去重if(i>0 && nums[i] == nums[i-1]){continue;}//找集合-双指针做法int left = i+1;int right = nums.length-1;while(left<right){int sum = nums[i]+nums[left]+nums[right];if(sum<0){left++;}else if(sum>0){right--;}else{res.add(Arrays.asList(nums[i],nums[left],nums[right]));//去重while(right>left && nums[right]==nums[right-1]){right--;}while(right>left && nums[left]==nums[left+1]){left++;}//再走一步//如:2223,最后一步只会走到2,而不是3left++;right--;}}}return res;}
}

18. 四数之和

class Solution {public List<List<Integer>> fourSum(int[] nums, int target) {List<List<Integer>> res = new ArrayList<>();//和三数之和是一样的道理,再套一层--我们通过双指针最多可以同时操作两个数int len = nums.length;//排序,因为不在乎顺序Arrays.sort(nums);for(int i = 0;i<len;i++){//排序如果首位大于tar并且当前位置大于等于0,那么后面怎么加减都无法凑到tarif(nums[i]>target && nums[i]>=0){break;}//对i去重if(i>0 && nums[i]==nums[i-1]){continue;}//开始遍历后面三个,其实就是三数之和for(int j = i+1;j<len;j++){//对j去重if(nums[i]+nums[j] > target && nums[i]+nums[j]>=0){break;}//去重if(j>i+1 && nums[j]==nums[j-1]){continue;}int left = j+1;int right = len-1;while(left<right){int sum = nums[i]+nums[j]+nums[left]+nums[right];if(sum>target){right--;}else if(sum<target){left++;}else{res.add(Arrays.asList(nums[i],nums[j],nums[left],nums[right]));while(right>left && nums[right]==nums[right-1]){right--;}while(right>left && nums[left]==nums[left+1]){left++;}left++;right--;}}}}return res;}
}

补充知识点

今天没有相关知识点的补充,主要是做了对秋招待准备的内容的整理以及资料的搜集

1)Java基础

2)JVM,JUC

3)数据结构与算法

4)MySQL,Redis

5)Spring系列

......

相关文章:

备战秋招day4

算法 242. 有效的字母异位词 class Solution {public boolean isAnagram(String s, String t) {int[] count new int[26];for(int i 0;i<s.length();i){count[s.charAt(i)-a];}for(int i 0;i<t.length();i){count[t.charAt(i)-a]--;if(count[t.charAt(i)-a]<0){r…...

【华为OD机试B卷】服务器广播、需要广播的服务器数量(C++/Java/Python)

题目 题目描述 服务器连接方式包括直接相连&#xff0c;间接连接。 A和B直接连接&#xff0c;B和C直接连接&#xff0c;则A和C间接连接。 直接连接和间接连接都可以发送广播。 给出一个N*N数组&#xff0c;代表N个服务器&#xff0c; matrix[i][j] 1&#xff0c; 则代表i和j直…...

目标检测数据集 - 手机屏幕表面表面缺陷检测数据集下载「包含VOC、COCO、YOLO三种格式」

数据集介绍&#xff1a;手机屏幕表面缺陷检测数据集&#xff0c;真实采集高质量手机屏幕表面含缺陷图片数据&#xff0c;数据集含多款不同型号和品牌的手机屏幕表面图片数据&#xff0c;包括苹果手机屏、三星手机屏、华为手机屏等数据。数据标注标签包括 Bubble 气泡/水滴、Scr…...

语音相关算法学习整理

最近看了一下百度paddlespeech的一些公开课&#xff0c;把课程里的视频内容大体听了一下&#xff0c;现在整理一下笔记。教程链接见&#xff1a;飞桨AI Studio星河社区-人工智能学习与实训社区 语音识别的过程可以这样简单概括&#xff1a; 将声音信号经过预加重、加窗、fft等…...

[C#] opencvsharp对Mat数据进行序列化或者反序列化以及格式化输出

【简要介绍】 在OpenCVSharp中&#xff0c;FileStorage类用于将数据&#xff08;包括OpenCV的Mat类型数据&#xff09;序列化为XML或YAML格式的文件&#xff0c;以及从这些文件中反序列化数据。以下是关于FileStorage类用法的详细说明&#xff1a; 写入数据&#xff08;序列化…...

Linux中的TCP与UDP:理解两者的差异

在计算机网络的世界中&#xff0c;TCP&#xff08;传输控制协议&#xff09;和UDP&#xff08;用户数据报协议&#xff09;是两种至关重要的传输层协议。它们就像是我们日常生活中的通信方式&#xff0c;有着不同的使用场景和优缺点。通过一个简单的比喻&#xff0c;我们可以更…...

通信系统网络架构_1.局域网网络架构

当今&#xff0c;通信网络从大的方面主要包括局域网、广域网、移动通信网等网络形式。不同的网络会采用不同的技术进行网络构建。以下针对不同的网络给出各自的网络架构以及所采用的技术。 1.概述 局域网&#xff0c;即计算机局部区域网络&#xff0c;是一种为单一机构所拥有的…...

Pycharm 启动 Django项目 —— python篇

1、打开你的工程&#xff0c;在菜单栏里找到Run-->Edit Configurations 2、在打开的对话框里边选择Python&#xff0c;点击号 3.选择Python 4.出现了一个新的项Unnamed&#xff0c;你可以把它改名叫debug&#xff0c;好听一点 5.脚本选择你网站的manage.py&#xff0c;脚本参…...

6-47选择整数计算

整数计算&#xff1a; 用swing组件来实现整数计算&#xff0c;需要对整数计算的值进行校验。 import javax.swing.*; import java.awt.*; import java.awt.event.*;public class IntegerCalculator extends JFrame implements ActionListener {private JCheckBox[] checkBoxe…...

什么是Redis?|介绍与使用及特点浅记

Redis简介 Redis&#xff08;Remote Dictionary Server&#xff09;是一种基于内存、支持持久化的键值对存储系统&#xff0c;具有丰富的数据结构和高性能的特性。它不仅可以作为数据库&#xff0c;还可以作为缓存和消息中间件使用。Redis是单线程模型&#xff0c;但利用IO多路…...

LeetCode题练习与总结:只出现一次的数字Ⅱ--137

一、题目描述 给你一个整数数组 nums &#xff0c;除某个元素仅出现 一次 外&#xff0c;其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。 示例 1&#xff1a; 输入&#xff1a;n…...

Live Wallpaper Themes 4K Pro for Mac v19.9 超高清4K动态壁纸

Live Wallpaper & Themes 4K Pro for Mac v19.7 是一款专为Mac用户设计的超高清4K动态壁纸应用程序。它凭借出色的视觉效果和丰富的个性化设置&#xff0c;为用户带来全新的桌面体验。 这款软件提供了大量精美的动态壁纸供用户选择&#xff0c;涵盖了各种风格和主题&#…...

vue3+ts:监听dom宽高变化函数

一、效果展示 二、代码 getSize.ts import { ref, Ref, watchEffect } from "vue";export const getWidth (domRef: Ref<HTMLElement | null>) > {const width ref<number>(0);const height ref<number>(0);const observer new ResizeObs…...

数据库浅识及MySQL的二进制安装

数据库基础概念与MySQL二进制安装与初始化 使用数据库的必要性 数据库可以结构化储存大量数据信息&#xff0c;方便用户进行有效的检索访问 有效的保持数据信息的一致性&#xff0c;完整性&#xff0c;降低数据冗余 可以满足应用的共享和安全方面的要求 数据库基本概念 数据…...

机器学习之数学基础(七)~过拟合(over-fitting)和欠拟合(under-fitting)

目录 1. 过拟合与欠拟合 1.1 Preliminary concept 1.2 过拟合 over-fitting 1.3 欠拟合 under-fitting 1.4 案例解析&#xff1a;黑天鹅 1. 过拟合与欠拟合 1.1 Preliminary concept 误差 经验误差&#xff1a;模型对训练集数据的误差。泛化误差&#xff1a;模型对测试…...

⭐最新版!SpringBoot正确集成PageHelper姿势,不再被误导!

GGBond&#x1f508; CSDN的朋友们大家好哇&#xff0c;我是新来的Java练习生 CodeCodeBond&#xff01; 什么是PageHelper&#xff1f; 这里给不知道的人儿说明一下~~ 知道的xdm可以跳过了&#xff01; PageHelper顾名思义是一个 页面 帮手。也就是分页查询的一个好用的工具…...

解决:Xshell通过SSH协议连接Ubuntu服务器报“服务器发送了一个意外的数据包,received:3,expected:20”

下图所示&#xff1a; 日志也基本看不出来问题在哪&#xff0c;只是说断开了连接大概是验证失败。有幸在某论坛评论区找到了原因&#xff0c;是因为我的xshell版本太低了而服务器的ssh版本太高&#xff0c;高版本的ssh默认屏蔽了一部分不太安全的算法导致建立连接的时候验证失败…...

[学习笔记] 禹神:一小时快速上手Electron笔记,附代码

课程地址 禹神&#xff1a;一小时快速上手Electron&#xff0c;前端Electron开发教程_哔哩哔哩_bilibili 笔记地址 https://github.com/sui5yue6/my-electron-app 进程通信 桌面软件 跨平台的桌面应用程序 chromium nodejs native api 流程模型 main主进程 .js文件 node…...

Java stream操作流常用的方式

在Java中&#xff0c;Stream操作流是Java 8新引入的一个功能&#xff0c;它提供了很多强大的操作&#xff0c;方便我们进行集合的处理和操作。常用的Stream操作方式有&#xff1a; 1.过滤&#xff1a;使用filter()方法可以过滤掉集合中不符合条件的元素。 2.映射&#xff1a;…...

【C#】图形图像编程

实验目标和要求&#xff1a; 掌握C#图形绘制基本概念&#xff1b;掌握C#字体处理&#xff1b;能进行C#图形图像综合设计。 运行效果如下所示&#xff1a; 1.功能说明与核心代码 使用panel为画板&#xff0c;完成以下设计内容&#xff1a; 使用pen绘制基础图形&#xff1b;使…...

华为交换机VRRP实战:用eNSP模拟一个部门隔离、主备网关自动切换的企业网

华为eNSP实战&#xff1a;VRRP高可用网关设计与故障模拟全解析 当市场部的同事正在视频会议时突然断网&#xff0c;而技术部的代码提交也因网络抖动失败——这类因单点故障引发的业务中断&#xff0c;在企业网中绝非个例。本文将用华为eNSP模拟器&#xff0c;带您构建一个具备毫…...

在Windows上用C++部署YOLO11模型:从PyTorch训练到QT桌面应用的全流程避坑指南

工业级YOLO11模型C部署实战&#xff1a;从PyTorch到QT6.9的工程化落地指南 当Python训练的AI模型需要真正投入生产线时&#xff0c;C部署往往成为必经之路。去年在为某电子元件制造商部署电容极性检测系统时&#xff0c;我深刻体会到从Jupyter Notebook到稳定运行的Windows桌面…...

如何通过手机号快速找回QQ账号:3分钟完成的终极指南

如何通过手机号快速找回QQ账号&#xff1a;3分钟完成的终极指南 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq 还在为忘记QQ账号而烦恼吗&#xff1f;每次需要验证好友身份时都要翻遍通讯录&#xff1f;现在&#xff0c;通过phone2…...

MUSE快速入门指南:5步完成英语-西班牙语词向量映射

MUSE快速入门指南&#xff1a;5步完成英语-西班牙语词向量映射 【免费下载链接】MUSE A library for Multilingual Unsupervised or Supervised word Embeddings 项目地址: https://gitcode.com/gh_mirrors/mu/MUSE MUSE&#xff08;Multilingual Unsupervised or Super…...

AI图像放大神器Upscayl:告别模糊时代的终极解决方案

AI图像放大神器Upscayl&#xff1a;告别模糊时代的终极解决方案 【免费下载链接】upscayl &#x1f199; Upscayl - Free and Open Source AI Image Upscaler for Linux, MacOS and Windows built with Linux-First philosophy. 项目地址: https://gitcode.com/GitHub_Trendi…...

跨平台游戏画质增强工具:OptiScaler打破显卡壁垒的全方位解决方案

跨平台游戏画质增强工具&#xff1a;OptiScaler打破显卡壁垒的全方位解决方案 【免费下载链接】OptiScaler DLSS replacement for AMD/Intel/Nvidia cards with multiple upscalers (XeSS/FSR2/DLSS) 项目地址: https://gitcode.com/GitHub_Trending/op/OptiScaler 在PC…...

Webcam-Pulse-Detector实战应用:构建远程健康监测系统

Webcam-Pulse-Detector实战应用&#xff1a;构建远程健康监测系统 【免费下载链接】webcam-pulse-detector A python application that detects and highlights the heart-rate of an individual (using only their own webcam) in real-time. 项目地址: https://gitcode.com…...

AI 对人类的影响与普通人的应对策略

AI 对人类的影响与普通人的应对策略 AI 作为当下科技革命的核心驱动力&#xff0c;正在以较快速度影响人类社会。近年的发展呈现出更复杂的图景&#xff1a;技术能力提升与落地成本并存&#xff0c;效率提升与分配不均交织&#xff0c;乐观预期与治理困境相互叠加&#xff0c;影…...

Phi-3 Forest Lab快速部署:使用Podman替代Docker的无root安全运行方案

Phi-3 Forest Lab快速部署&#xff1a;使用Podman替代Docker的无root安全运行方案 1. 项目概述 Phi-3 Forest Lab是一个基于微软Phi-3 Mini 128K Instruct模型构建的极简主义AI对话终端&#xff0c;旨在为用户提供一个静谧、高效且富有逻辑的思考空间。与传统AI终端不同&…...

lt6911c全套资料:原理图、PCB、源代码及手册

lt6911c全套资料&#xff0c;包括原理图&#xff0c;pcb&#xff0c;源代码&#xff0c;寄存器手册&#xff0c;datasheet。 。 最近在折腾LT6911C这款HDMI转MIPI的芯片&#xff0c;翻遍全网总算集齐了全套开发资料。这玩意儿在视频转换领域用得挺多&#xff0c;但真开始动手调…...