【每日刷题】Day4

【每日刷题】Day4

🥕个人主页:开敲🍉

🔥所属专栏:每日刷题🍍

目录

1. 83. 删除排序链表中的重复元素 - 力扣(LeetCode)

2. 88. 合并两个有序数组 - 力扣(LeetCode)

3. 1768. 交替合并字符串 - 力扣(LeetCode)

1. 83. 删除排序链表中的重复元素 - 力扣(LeetCode)

//主要考察对链表的理解,主体思路就是用一个指针指向头,然后向后遍历寻找相同的,将相同的val后的地址放到当前next中

struct ListNode* deleteDuplicates(struct ListNode* head)

{

    if(!head)//考虑NULL指针的可能

    {

        return head;

    }

    struct ListNode* pf = head;//指向头指针

    while(pf->next)

    {

        if(pf->val == pf->next->val)//遍历寻找后面相同的val

        {

            pf->next = pf->next->next;//更改当前next指向的位置

        }

        else

        {

            pf = pf->next;找到不相同的后挪动pf指针

        }

    }

    return head;

}

2. 88. 合并两个有序数组 - 力扣(LeetCode)

//暴力求解:使用第三个数组,按照由小到大依次将nums1、nums2中的元素存储,最后再放回nums1中

void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n)

{

    int i = 0;

    int j = 0;

    int left = 0;

    int right = 0;

    int nums3[m+n];

    while(left<m||right<n)

    {

        if(left==m)

        {

            nums3[j++] = nums2[right++];

        }

        else if(right==n)

        {

            nums3[j++] = nums1[left++];

        }

        else if(nums1[left]<nums2[right])

        {

            nums3[j++] = nums1[left++];

        }

        else

        {

            nums3[j++] = nums2[right++];

        }

    }

    for(i = 0;i<j;i++)

    {

        nums1[i] = nums3[i];

    }

}

3. 1768. 交替合并字符串 - 力扣(LeetCode)

//交替存储,注意动态内存开辟时多开辟一个空间存储'\0'

char * mergeAlternately(char * word1, char * word2)

{

    int ret1 = strlen(word1);

    int ret2 = strlen(word2);

    int ret3 = ret1+ret2;

    char* s = (char*)malloc((ret3+1)*sizeof(char));

    int x = 0;

    int y = 0;

    int j = 0;

    while(word1[x]!='\0'||word2[y]!='\0')

    {

        if(word1[x]=='\0')

        {

            s[j++] = word2[y++];

        }

        else if(word2[y]=='\0')

        {

            s[j++] = word1[x++];

        }

        else

        {

            s[j++] = word1[x++];

            s[j++] = word2[y++];

        }

    }

    s[j] = '\0';

    return s;

}

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

(Git) gitignore基础使用

文章目录 前言.gitignore 模式匹配注释 #转义 \直接匹配任意字符匹配 *单个字符匹配 ?目录分割 /多级目录 **范围匹配 []取消匹配 ! 检查是否生效父子文件END 前言 Git - gitignore Documentation (git-scm.com) 在使用git管理的项目中&#xff0c;可以通过.gitignore文件管理…

蓝桥杯考前复习三

1.约数个数 由乘法原理可以得出&#xff1a; import java.util.*; public class Main{static int mod (int)1e9 7;public static void main(String[] args){Map<Integer,Integer> map new HashMap<>(); //创建一个哈希表Scanner scan new Scanner(System.in);i…

FJSP:美洲狮优化算法(Puma Optimizar Algorithm ,POA)求解柔性作业车间调度问题(FJSP),提供MATLAB代码

一、柔性作业车间调度问题 柔性作业车间调度问题&#xff08;Flexible Job Shop Scheduling Problem&#xff0c;FJSP&#xff09;&#xff0c;是一种经典的组合优化问题。在FJSP问题中&#xff0c;有多个作业需要在多个机器上进行加工&#xff0c;每个作业由一系列工序组成&a…

LangChain-12 Routing By Semantic Similarity 让GPT根据不明确的问题 自动选择工具集 根据语义自动路由

问题背景 平常我们设计程序的时候&#xff0c;会这么写&#xff1a; // 随便举例 String type paramDTO.getType(); if (type.equals("吃饭")) {// do } else if (type.equals("喝水")) {// do } else {// do }此时如果type传入的不是数字&#xff0c;那…

C++:MySQL的事务概念与使用(四)

1、事务的概念 定义&#xff1a;事务是构成单一逻辑工作单元的操作集合&#xff0c;要么完整的执行&#xff0c;要么完全不执行。无论发生何种情况&#xff0c;DBS必须保证事务能正确、完整的执行。 性质&#xff1a;事务的四大ACID性质。 原子性(Atomicity)&#xff1a;一个事…

基于SpringBoot的“汽车租赁系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“汽车租赁系统”的设计与实现&#xff08;源码数据库文档PPT) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能结构图 管理员登录界面图 管理员功能界面…

AWE2024酷开科技智能家居,让生活从此更智能!

随着科技的飞速发展&#xff0c;智能家居已经成为了人们生活中不可或缺的一部分。在这个领域里&#xff0c;酷开科技品类逐渐丰富&#xff0c;在AWE2024展会上展现出耀眼光芒&#xff0c;将全品类智能家电新品集结亮相&#xff01;让人们的生活更加便捷、舒适和智能化。 酷开K…

MUX VLAN

目录 原理概述 实验目的 实验内容 实验拓扑 1.基本配置 2.使用Hybrid端口实现网络需求 3.使用Mux VLAN实现网络需求 原理概述 在实际的企业网络环境中&#xff0c;往往需要所有的终端用户都能够访问某些特定的服务器&#xff0c;而用户之间的访问控制规则则比较复杂。在…

基于Spring Boot+Vue的在线拍卖系统

随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单管理、…

dockerhub右键快速搜索脚本

Chrome 浏览器扩展的后台脚本&#xff0c;用于创建右键菜单项&#xff0c;并根据用户的操作在新的标签页中打开 Docker Hub 网站或者进行搜索。 // 创建右键菜单项&#xff0c;用于打开 Docker Hub 网站 chrome.contextMenus.create({id: search-home, // 菜单项的唯一标识符t…

BMP280芯片I2C驱动开发指南

这颗芯片不太容易焊接&#xff0c;不能长时间风枪吹&#xff0c;否则容易掉壳。 第一部分 硬件连接 电路很简单&#xff0c;没什么需要注意的。 第二部分 软件驱动 本来打算使用SPL06的&#xff0c;结果焊接掉壳了&#xff0c;更换成bmp280了。函数名没有变过来。。。 void …

node相关

文章目录 nodeJS是什么&#xff1f;优缺点使用场景全局对象适合用于构建 I/O 密集型不适用于计算密集型任务 nodeJS是什么&#xff1f; Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境&#xff0c;它是跨平台和开源的。 Node.js 使用高效、轻量级的事件驱动、非阻…

免费SSL通配符证书/SSL泛域名证书获取教程

我们先基本了解什么是SSL证书以及其作用。SSL证书是一种数字证书&#xff0c;它通过为网站提供身份验证和数据加密服务&#xff0c;从而保护网站的用户信息安全。当我们在浏览器的地址栏看到“https”和绿色锁标志时&#xff0c;就表示该网站使用了SSL证书。 那么什么又是通配…

ES入门十四:分词器

我们存储到ES中数据大致分为以下两种&#xff1a; 全文本&#xff0c;例如文章内容、通知内容精确值&#xff0c;如实体Id 在对这两类值进行查询的时候&#xff0c;精确值类型会比较它们的二进制&#xff0c;其结果只有相等或者不想等。而对全文本类型进行等值比较是不太实现…

适用于 Windows 10 的 10 大免费数据恢复软件

数据丢失可能是一场噩梦&#xff0c;尤其是在涉及重要文件和文档时。无论是由于意外删除、系统崩溃还是病毒攻击&#xff0c;找到适合 Windows 10 的文件夹恢复软件都可以在恢复丢失的数据方面发挥重要作用。在本指南中&#xff0c;我们将探索适用于 Windows 10 用户的 10 大免…

【数字IC/FPGA】什么是无符号数?什么是有符号数?

进制 虽然在日常生活中&#xff0c;我们已经习惯了使用10进制数字&#xff0c;但在由数字电路构成的数字世界中&#xff0c;2进制才是效率更高的选择。 10进制与2进制 10进制&#xff08;decimal&#xff09;计数法&#xff08;一般也叫阿拉伯计数法&#xff09;是在日常生活…

优优嗨聚集团:个人债务,危险的边缘舞者

在现代社会&#xff0c;个人债务已成为一个不容忽视的现象。随着消费水平的提高和信贷市场的繁荣&#xff0c;越来越多的人选择通过借贷来满足生活或投资的需求。然而&#xff0c;个人债务如同一把双刃剑&#xff0c;既能助力我们实现梦想&#xff0c;也可能让我们陷入困境。那…

SiteServer 学习笔记 Day06 添加栏目名称

1、在关于我们栏目中添加ISO认证和系统、质量声明、以客户为中心。 2、在市场服务栏目中添加电信和网络、医疗系统、清洁技术、计算和存储。 3、在制造服务拉姆中添加PCB组装、塑料成型服务、机器制造。 4、在测试服务栏目中添加测试开发、功能测试。 5、在工程服务栏目中添…

PTA(题目集二 题目 代码 C++)

目录 题目一&#xff1a; 代码&#xff1a; 题目二&#xff1a; 代码&#xff1a; 题目三&#xff1a; 代码&#xff1a; 题目四&#xff1a; 代码&#xff1a; 题目五&#xff1a; 代码&#xff1a; 题目六&#xff1a; 代码&#xff1a; 题目七&#xff1a; 代…

《从零开始学架构》读书笔记(一)

目录 软件架构设计产生的历史背景 软件架构设计的目的 系统复杂度来源 追求高性能 一、单机高性能 二、集群的高性能 追求高可用 一、计算高可用 二、存储高可用 追求可扩展性 一、预测变化 二、应对变化 追求安全、低成本、规模 一、安全 二、低成本 三、规模…