Coding Caprice - Linked-List 1

devtools/2024/12/23 21:29:54/

203. 移除链表元素

class Solution {
public:ListNode* removeElements(ListNode* head, int val) {ListNode* Head = new ListNode();Head->next = head;ListNode* out1 = Head;while(Head!=nullptr && Head->next!=nullptr){if(Head->next->val == val){ListNode* tmp = Head->next->next;delete Head->next; Head->next = tmp;}else{Head = Head->next;}}ListNode* out2 = out1->next;delete out1;return out2;}
};

707. 设计链表

struct ln{int val;ln* next;ln():val(0), next(nullptr){}ln(int val):val(val), next(nullptr){}ln(int val, ln* next):val(val), next(next){}
};
class MyLinkedList {
public:ln *head = nullptr;ln *tail = nullptr;int num = 0;MyLinkedList() {head = new ln();tail = head;}ln* find(int index){ln* ob = head;for(int i=0; i<index; ++i){if(ob!=nullptr){ob = ob->next;}else{return nullptr;                                                                        }}return ob;}int get(int index) {ln* ob = find(index);if(ob==nullptr){return -1;}ob = ob->next;return ob==nullptr? -1: ob->val;}void addAtHead(int val) {ln* n = head->next;head->next = new ln(val, n);num++;}void addAtTail(int val) {ln* n = find(num);n->next = new ln(val);num++;}void addAtIndex(int index, int val) {ln* ob = find(index);if(ob==nullptr){return;}ln* tmp = ob->next;ob->next = new ln(val, tmp);num++;}void deleteAtIndex(int index) {ln* ob = find(index);if(ob==nullptr){return;}ln* tmp = ob->next;if(tmp==nullptr){return;}tmp = tmp->next;delete ob->next;ob->next = tmp;num--;}
};

206. 反转链表

class Solution {
public:ListNode* reverseList(ListNode* head) {if(head==nullptr){return nullptr;}ListNode* tmp = nullptr;ListNode* out = nullptr;while(head!=nullptr){tmp = head->next;head->next = out;out = head;head = tmp;}return out;}
};


http://www.ppmy.cn/devtools/144801.html

相关文章

whisper实时语音转文字

import whisperimport osdef check_file_exists(file_path):if not os.path.exists(file_path):raise FileNotFoundError(f"音频文件不存在: {file_path}")# 音频文件路径 audio_path r"D:\视频\temp_audio.wav"# 检查文件是否存在 check_file_exists(aud…

Crawl4AI:一个为大型语言模型(LLM)和AI应用设计的网页爬虫和数据提取工具实战

这里写目录标题 一、crawl4AI功能及简介1、简介2、特性 二、项目地址三、环境安装四、大模型申请五、代码示例1.生成markdown2.结构化数据 一、crawl4AI功能及简介 1、简介 Crawl4AI 是一个开源的网页爬虫和数据抓取工具&#xff0c;一个python项目&#xff0c;主要为大型语言…

OpenEuler Linux上怎么测试Nvidia显卡安装情况

当安装好显卡驱动后怎么样知道驱动程序安装好了,这里以T400 OpenEuler 正常情况下,我们只要看一下nvidia-smi 状态就可以确定他已经正常了 如图: 这里就已经确定是可以正常使用了,这里只是没有运行对应的程序,那接来下我们就写一个测试程序来测试一下:以下代码通过AI给出然后…

shell脚本案例

脚本一&#xff1a;打印当前系统登录用户列表 #!/bin/bash # 使用 who 命令获取当前登录用户信息并输出 who解释&#xff1a;who 命令用于显示当前登录系统的用户信息&#xff0c;包括用户名、登录终端、登录时间等。此脚本直接执行 who 命令并将结果输出到终端。 脚本二&…

【漫话机器学习系列】012.深度学习(Deep Learning)基础

深度学习基础概述 深度学习&#xff08;Deep Learning&#xff09;是一种基于人工神经网络的大规模机器学习方法&#xff0c;在图像识别、语音处理、自然语言理解等领域具有广泛的应用。深度学习模型的构建包括数据准备、损失函数设计、优化算法选择、网络架构搭建、测试数据验…

NGINX的安装和配置(Linux环境)

目录 NGINX 安装方式1、 离线编译安装2、 在线仓库安装 NGINX 常用命令1、进程管理命令2、信息查看命令 NGINX 配置文件1、进程使用的配置2、配置文件格式3、配置文件层级 NGINX 全局配置1、全局配置常用指令2、连接相关配置 NGINX 配置MIME1、MIME 标准2、types 配置块3、defa…

springboot连接mongo性能优化参数配置

在 Spring Boot 中连接 MongoDB 时&#xff0c;性能优化是一个重要的环节。Spring Boot 提供了多种配置选项&#xff0c;可以通过调整这些参数来优化 MongoDB 的连接性能。以下是一些常见的性能优化参数及其配置建议。 1. 连接池配置 MongoDB 连接池的配置是性能优化的核心。通…

浏览器可以直接请求 websocket

一、原生支持 浏览器原生支持 WebSocket 协议&#xff0c;这使得开发者可以直接在 JavaScript 代码中使用 WebSocket 来建立与服务器的双向通信通道。 const socket new WebSocket("ws://localhost:8080");socket.addEventListener("open", function (e…