备战秋招day3

碎碎念:

今天有个面试,学校这里还有实训。
今日任务:算法+mysql知识点补充

算法

24. 两两交换链表中的节点

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode swapPairs(ListNode head) {if(head == null) return head;ListNode dump = new ListNode(-1,head);ListNode cur = dump;while(cur.next != null && cur.next.next != null){ListNode tmp = cur.next.next.next;//交换ListNode node1 = cur.next;ListNode node2 = cur.next.next;cur.next = node2;node2.next = node1;node1.next = tmp;//往后迭代cur = node1;}return dump.next;}
}

19. 删除链表的倒数第 N 个结点

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/class Solution {public ListNode removeNthFromEnd(ListNode head, int n) {ListNode dummy = new ListNode(-1,head);//快慢指针:找倒数第几个的话,那我们可以找两个指针,快指针先走n步ListNode fast = dummy;ListNode slow = dummy;int count = n;while(n-- > 0 && fast!=null){fast = fast.next;}//我们要找到待删除节点的前一个节点 fast = fast.next;while(fast!=null){slow = slow.next;fast = fast.next;}slow.next = slow.next.next;return dummy.next;}
}

面试题 02.07. 链表相交

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode(int x) {*         val = x;*         next = null;*     }* }*/
public class Solution {//题目指的相交,是指某一段后,两条链表有公共部分,即从交点开始后半段是相同的//因此我们得找到交点,即先统计出两条表的长度public ListNode getIntersectionNode(ListNode headA, ListNode headB) {ListNode tmpa = headA;ListNode tmpb = headB;int lena = 0,lenb = 0;while(tmpa!=null){lena++;tmpa = tmpa.next;}while(tmpb!=null){lenb++;tmpb = tmpb.next;}//我们得对两条链表谁长做不同情况的判断//但这里有个方法可以让我们不用写两遍,就是永远让A链表是最长的那条链表if(lenb>lena){//做交换就能保证a是最长链表ListNode node = null;node = headA;headA = headB;headB = node;}//算出两者差,谁长谁先走差值的步数int diff = Math.abs((lena-lenb));//重置回来tmpa = headA;tmpb = headB;//A最长,所以A先走差值while(diff-- > 0){tmpa = tmpa.next;}//找相同节点while(tmpa!=null){//注意:题目说了是节点相同,而不仅仅是值,因此这里直接==即可if(tmpa == tmpb){return tmpa;}tmpa = tmpa.next;tmpb = tmpb.next;}return null;}
}

142. 环形链表 II

/*** Definition for singly-linked list.* class ListNode {*     int val;*     ListNode next;*     ListNode(int x) {*         val = x;*         next = null;*     }* }*/
public class Solution {public ListNode detectCycle(ListNode head) {ListNode fast = head;ListNode slow = head;//先判断是否有环while(fast!=null && fast.next!=null){slow = slow.next;fast = fast.next.next;//两个指针如果相遇,表示有环if(slow == fast){//找相遇点//方法是通过两个指针来去找ListNode node1 = fast;ListNode node2 = head;while(node1 != node2){node1 = node1.next;node2 = node2.next;}return node2;}}return null;}
}

知识点补充

MySQL

背了那么久的MVCC,今天再次去复习了一遍,学习到的内容有,MVCC实现原理,MVCC有什么用,快照读,当前读,undo log,什么是ReadView,MVCC如何解决相关读写问题的

事务,索引这块内容,不应该只停留在背书上,加深理解才可能更好把握面试。

明天记录Redis以及MySQL相关知识点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/860102.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL-索引:聚集索引、覆盖索引、组合索引、前缀索引、唯一索引

文章目录 MySQL-索引:聚集索引、覆盖索引、组合索引、唯一索引1、聚集索引2、覆盖索引3、组合索引4、唯一索引 MySQL-索引:聚集索引、覆盖索引、组合索引、唯一索引 1、聚集索引 在数据库中,聚集索引决定了表数据行的物理存储顺序。在InnoD…

C语言 | Leetcode C语言题解之第189题轮转数组

题目&#xff1a; 题解&#xff1a; void swap(int* a, int* b) {int t *a;*a *b, *b t; }void reverse(int* nums, int start, int end) {while (start < end) {swap(&nums[start], &nums[end]);start 1;end - 1;} }void rotate(int* nums, int numsSize, int…

国内邮件推送如何避免拦截?内容优化技巧?

国内邮件推送的平台怎么选择&#xff1f;如何提高邮件推送效果&#xff1f; 邮件营销是企业与客户沟通的重要方式&#xff0c;但在国内邮件推送过程中&#xff0c;邮件被拦截的问题屡见不鲜。为了确保邮件能够顺利送达目标用户&#xff0c;AokSend将探讨一些有效的策略&#x…

【Android】实现图片和视频混合轮播(无限循环、视频自动播放)

目录 前言一、实现效果二、具体实现1. 导入依赖2. 布局3. Banner基础配置4. Banner无限循环机制5. 轮播适配器6. 视频播放处理7. 完整源码 总结 前言 我们日常的需求基本上都是图片的轮播&#xff0c;而在一些特殊需求&#xff0c;例如用于展览的的数据大屏&#xff0c;又想展…

跟着DW学习大语言模型-什么是知识库,如何构建知识库

建立一个高效的知识库对于个人和组织来说非常重要。无论是为了个人学习和成长&#xff0c;还是为了组织的持续创新和发展&#xff0c;一个完善的知识管理系统都是不可或缺的。那么&#xff0c;如何建立一个高效的知识库呢&#xff1f; 在建立知识库之前&#xff0c;首先需要确定…

第3章 小功能大用处-事务与Lua

为了保证多条命令组合的原子性&#xff0c;Redis提供了简单的事务功能以及集成Lua脚本来解决这个问题。 首先简单介绍Redis中事务的使用方法以及它的局限性&#xff0c;之后重点介绍Lua语言的基本使用方法&#xff0c;以及如何将Redis和Lua脚本进行集成&#xff0c;最后给出Red…

项目实训-vue(十三)

项目实训-vue&#xff08;十三&#xff09; 文章目录 项目实训-vue&#xff08;十三&#xff09;1.概述2.处理按钮 1.概述 本篇博客将记录我在图片上传页面中的工作。 2.处理按钮 实现了图片的上传之后&#xff0c;还需要设置具体的上传按钮。 这段代码使用 Element UI 的 …

Linux之磁盘管理

最近工作中&#xff0c;进行需要进行项目部署、排查问题。而磁盘又是其中绕不开的一个环节。今天就来整理一下磁盘的操作。 1、查看磁盘使用情况 df -h文件系统 容量 已用 可用 已用% 挂载点 devtmpfs 2.0G 0 2.0G 0% /dev tmpfs …

Spring学习02-[Spring容器核心技术IOC学习]

Spring容器核心技术IOC学习 什么是bean?如何配置bean?Component方式bean配合配置类的方式import导入方式 什么是bean? 被Spring管理的对象就是bean,和普通对象的区别就是里面bean对象里面的属性也被注入了。 如何配置bean? Component方式、bean配合配置类的方式、import…

C语言 | Leetcode C语言题解之第190题颠倒二进制位

题目&#xff1a; 题解&#xff1a; const uint32_t M1 0x55555555; // 01010101010101010101010101010101 const uint32_t M2 0x33333333; // 00110011001100110011001100110011 const uint32_t M4 0x0f0f0f0f; // 00001111000011110000111100001111 const uint32_t M8…

【containerd】Containerd高阶命令行工具nerdctl

前言 对于习惯了使用docker cli的用户来说&#xff0c;containerd的命令行工具ctr使用起来不是很顺手&#xff0c;此时别慌&#xff0c;还有另外一个命令行工具项目nerdctl可供我们选择。 nerdctl是一个与docker cli风格兼容的containerd的cli工具。 nerdctl已经作为子项目加入…

【区分vue2和vue3下的element UI Statistic 统计数值组件,分别详细介绍属性,事件,方法如何使用,并举例】

Element UI 是一个为 Vue.js 设计的 UI 组件库&#xff0c;但截至当前&#xff08;2023年&#xff09;&#xff0c;Element UI 主要针对 Vue 2.x 进行了设计和开发&#xff0c;并没有官方的 Vue 3.x 版本。然而&#xff0c;Vue 3.x 带来了许多新的特性和改进&#xff0c;因此一…

es 更新索引mapping和setting

1.关闭索引 curl -X POST "localhost:9200/your_index_name/_close"2.修改setting 配置 无法更新一些默认数据,按照需求构建&#xff0c;我这边是构建增加了分词器 "settings": {"index": {"creation_date": "1718850346547…

秋招突击——6/24——复习{完全背包问题——买书,状态转换机——股票买卖V}——新作{两数相除,LRU缓存实现}

文章目录 引言复习完全背包问题——买书个人实现 状态转换机——股票买卖V个人实现参考实现 新作两数相除个人实现 新作LRU缓存实现个人实现unordered_map相关priority_queue相关 参考实现自己复现 总结 引言 今天知道拼多多挂掉了&#xff0c;难受&#xff0c;那实习就是颗粒无…

汪汪队短视频:成都柏煜文化传媒有限公司

汪汪队短视频&#xff1a;萌宠与冒险的交织乐章 在数字时代的浪潮中&#xff0c;短视频以其短小精悍、内容丰富的特点&#xff0c;迅速占领了人们的闲暇时光。而在这些琳琅满目的短视频中&#xff0c;有一类作品以其独特的魅力吸引了无数观众的目光&#xff0c;那就是以萌宠为…

【AI原理解析】—小型神经网络原理

目录 一、定义与特点 二、优化方法 三、性能评估 四、应用场景 五、工具与可视化 一、定义与特点 定义&#xff1a;微型神经网络&#xff08;轻量级神经网络&#xff09;是指那些需要参数数量较少、计算代价较小的神经网络模型。特点&#xff1a; 参数数量少&#xff1a;…

YOLOv8 目标检测程序的输出 (1, 84, 8400)的解释

YOLOv8 目标检测程序的输出 (1, 84, 8400)的解释 flyfish 完整代码请看 # 使用预处理后的图像数据进行推理 outputs session.run(None, {model_inputs[0].name: img_data})也就是这个outputs 输出结果代表什么 outputs session.run(None, {model_inputs[0].name: img_dat…

CSS3 多列布局

CSS3 多列布局 CSS3 多列布局是一种强大的布局技术,它允许开发者将内容分为多个列,类似于报纸或杂志的布局。这种布局方式不仅提高了页面设计的灵活性,还增强了用户阅读体验。本文将详细介绍 CSS3 多列布局的相关属性,并通过示例展示其应用。 多列布局的基本概念 在 CSS…

Android :unable to instantiate application

前言 如题 app在运行的时候&#xff0c;打开就崩溃了。 错误日志&#xff1a;Android :unable to instantiate application. 以下是原因分析和解决方法&#xff1a; 可能原因1&#xff1a; 可能是com.xxx.xxx.MyApplication路径配置错误了&#xff0c;在移动完文件的时候&a…

单门户上集成多种数据库查询入口

&#xff08;作者&#xff1a;陈玓玏&#xff09; 开源项目&#xff0c;欢迎star哦&#xff0c;https://github.com/tencentmusic/cube-studio 在一家公司&#xff0c;我们通常会有多种数据库&#xff0c;每种数据库因为其特性承担不同的角色&#xff0c;比如mysql这种轻量…