2024年最新【剑指Offer打卡】25,面试高频题目

总结

秋招即将开始,校招的朋友普遍是缺少项目经历的,所以底层逻辑,基础知识要掌握好!

而一般的社招,更是神仙打架。特别强调,项目经历不可忽视;几乎简历上提到的项目都会被刨根问底,所以项目应用的技术要熟练,底层原理必须清楚。

这里给大家提供一份汇集各大厂面试高频核心考点前端学习资料。涵盖 HTML,CSS,JavaScript,HTTP,TCP协议,浏览器,Vue框架,算法等高频考点238道(含答案)

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

资料截图 :

高级前端工程师必备资料包

🚀包含数组、对象、链表、堆栈、树等经典题型

☕️每天一道,轻松不累

💬详细的题目解析,收藏方便阅读

🙏在线star地址

在线阅读地址

在线阅读地址

输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。

示例1:

输入:1->2->4, 1->3->4

输出:1->1->2->3->4->4

限制:

0 <= 链表长度 <= 1000

注意:本题与主站 21 题相同:https://leetcode-cn.com/problems/merge-two-sorted-lists/

题解一:暴力遍历


思路:

  1. 将两个链表的数据合并,并排序

  2. 重新还原成新的链表

var mergeTwoLists = function (l1, l2) {

let arr = [];

const head = new ListNode(null)

while (l1) {

arr.push(l1.val)

l1 = l1.next;

}

while (l2) {

arr.push(l2.val)

l2 = l2.next;

}

// 整合数据

arr = arr.sort((a, b) => a - b);

let cur = head;

arr.forEach(v => {

const node = new ListNode(v);

cur.next = node;

cur = cur.next;

})

return head.next;

};

题解二:双指针


  1. 利用排序的这一特点,分别在两个链表中选择相对小的那个

var mergeTwoLists = function (l1, l2) {

let head = new ListNode(null)

cur = head;

while (l1 || l2) {

if (!l1) {

cur.next = new ListNode(l2.val)

l2 = l2.next;

}else if (!l2) {

cur.next = new ListNode(l1.val)

最后

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

❤️ 谢谢支持,喜欢的话别忘了 关注、点赞哦。

前端校招面试题精编解析大全

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

❤️ 谢谢支持,喜欢的话别忘了 关注、点赞哦。

[外链图片转存中…(img-qejUSlRR-1715720777177)]

  • 7
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值