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

入门必刷4题:算法面试轻松拿下

一、今天学习目标

拿下4 道入门必考题,简单、高频、好拿分:

  1. 两数之和
  2. 反转单链表
  3. 合并两个有序链表
  4. 有效的括号

1)两数之和

给定数组与目标值,找到两个数下标和为 target。

思路:暴力双重循环(入门版)

#include <stdio.h> void twoSum(int* nums, int n, int target) { for (int i = 0; i < n; i++) { for (int j = i + 1; j < n; j++) { if (nums[i] + nums[j] == target) { printf("%d %d\n", i, j); return; } } } } int main() { int nums[] = {2, 7, 11, 15}; twoSum(nums, 4, 9); // 输出 0 1 return 0; }

2)反转单链表(迭代版)

三指针:prev、cur、next,逐个翻转方向。

struct ListNode { int val; struct ListNode *next; }; struct ListNode* reverseList(struct ListNode* head) { struct ListNode *prev = NULL, *cur = head, *next; while (cur) { next = cur->next; cur->next = prev; prev = cur; cur = next; } return prev; }

3)合并两个有序链表

类似归并排序的 merge,谁小取谁。

struct ListNode* mergeTwoLists(struct ListNode* l1, struct ListNode* l2) { if (!l1) return l2; if (!l2) return l1; if (l1->val < l2->val) { l1->next = mergeTwoLists(l1->next, l2); return l1; } else { l2->next = mergeTwoLists(l1, l2->next); return l2; } }

4)有效的括号(栈)

左括号入栈,右括号匹配栈顶。

#include <stdbool.h> #include <string.h> bool isValid(char* s) { char stack[10000]; int top = -1; int len = strlen(s); for (int i = 0; i < len; i++) { char c = s[i]; if (c == '(') stack[++top] = ')'; else if (c == '[') stack[++top] = ']'; else if (c == '{') stack[++top] = '}'; else { if (top < 0 || stack[top] != c) return false; top--; } } return top == -1; }

二、今日小练习

  1. 对数组[3,2,4],target=6,求两数之和下标
  2. 链表1→2→3→4反转后结果
  3. 验证"{[]}""{[)]}"是否合法

答案:

  1. 1 2
  2. 4→3→2→1
  3. 合法 / 不合法
http://www.jsqmd.com/news/686814/

相关文章:

  • 航旅纵横APP故障18h后,各项功能才恢复正常
  • 聊聊2026年支持定制的振动式淘金设备厂家,哪家性价比高 - mypinpai
  • STM32 C8T6实战:用SPI读写W25Q64 Flash存储芯片(附完整代码与调试心得)
  • 京东抢购助手终极指南:一键实现自动化秒杀的高效方案
  • VideoDownloadHelper:3分钟掌握网页视频下载的终极解决方案
  • JVM学习第三天:JVM基础核心原理 + 面试高频题全解(精简版)
  • 利用ELIC的‘能量集中’特性,5分钟为你的图库系统实现极速缩略图预览
  • 机器学习实战:5大免费数据集入门指南
  • 第八届传智杯复赛第二场 题补bxg25-27 或许要期待明天
  • Kylin-Server-V11、openEuler-22.03和openEuler-24.03的MySQL 8.4.9版本正式发布
  • 室内空气质量监测装置厂家选购指南:避坑与筛选全攻略 - 速递信息
  • 别再只会点灯了!用STM32串口玩点高级的:OLED实时显示+双向通信实战
  • 超越中断:在国产ZYNQ的OCM里划块‘共享内存’,实现更高效的多核数据交换
  • 给DELL R730xd加装非认证PCIE固态后,风扇狂转?5分钟用IPMI命令搞定
  • 备案后别忘了这件事:手把手教你为阿里云已备案域名配置HTTPS(SSL证书)
  • AI Skills插件开发避坑指南:从环境搭建到上线
  • SchoolCMS:重构中小学校园数字化管理的开源技术架构
  • mysql添加一个用户
  • 从NRF24L01‘平替’到原生ESB:一个老项目无线模块升级的成本与性能实测
  • 结构体指针与动态数组实战指南
  • 2026年甘肃新疆等地带专用锁具的密封粮库门窗厂家推荐,靠谱品牌盘点 - mypinpai
  • 告别手动下载:用Homebrew管理你的Mac版ADB和Android平台工具链
  • 别再傻傻分不清SNR和EbN0了!通信仿真里的横坐标到底该用哪个?(附MATLAB代码避坑)
  • AI越强越值钱的3种反直觉能力,90%的工程师正在丢掉
  • LFM2-VL-1.6B与Proteus联调:嵌入式AI系统仿真案例
  • 5分钟掌握网盘直链下载助手:一键解锁八大平台高速下载通道
  • 铝木门铝材制造企业怎么选购,福建地区哪家值得考虑 - 工业品网
  • SAML单点登录实战:一次配置,搞定Okta和SAP SuccessFactors(SF平台)
  • 2026年选购废旧物资回收服务 昊盛废旧物资回收客户服务体系健全吗 - 工业推荐榜
  • 网络安全应急