爱上数据结构:顺序表和链表

本文详细介绍了线性表的概念、顺序表的常见操作(移除元素、删除重复项),以及链表相关题目(合并有序数组、查找相交链节、环形链表检测)。通过LeetCode示例展示了如何在这些数据结构中解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、线性表

线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使
用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串...
线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,
线性表在物理上存储时,通常以数组和链式结构的形式存储。

 二、顺序表的OJ题

1.原地移除数组中所有的元素val

27. 移除元素 - 力扣(LeetCode)icon-default.png?t=N7T8https://leetcode.cn/problems/remove-element/description/

int removeElement(int* nums, int numsSize, int val) {
    int scr=0,dst=0;
    while(scr<numsSize){
        if(nums[scr]==val){
            scr++;
        }
        else{
            nums[dst]=nums[scr];
            scr++;
            dst++;
        }
    }
    return dst;
}

在原数组上进行修改,等于val的跳过,不赋值。反之则赋值。

2.删除排序数组中的重复项

26. 删除有序数组中的重复项 - 力扣(LeetCode)icon-default.png?t=N7T8https://leetcode.cn/problems/remove-duplicates-from-sorted-array/description/

int removeDuplicates(int* nums, int numsSize) {
    if(numsSize=
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值