• 快速生成力扣链表题的链表,实现快速调试


    关于力扣链表题需要本地调试创建链表的情况

    我们在练习链表题,力扣官方需要会员,我们又不想开会员,想在本地调试给你们提供的代码
    声明:本人也是参考的别人的代码,给你们提供不同语言生成链表
    参考链接: 参考链接

    1、编写代码:

    C++版本

    #include
    
    struct ListNode {
        int val;
        ListNode* next;
        
        ListNode(int value) : val(value), next(nullptr) {}
    };
    
    ListNode* createSList(int* nums, int sz) {
        ListNode* head = nullptr;
        ListNode* tail = nullptr;
    
        for (int i = 0; i < sz; ++i) {
            ListNode* newNode = new ListNode(nums[i]);
    
            if (tail == nullptr) {
                head = tail = newNode;
            } else {
                tail->next = newNode;
                tail = newNode;
            }
        }
    
        return head;
    }
    
    void destroySList(ListNode* head) {
        while (head != nullptr) {
            ListNode* temp = head;
            head = head->next;
            delete temp;
        }
    }
    
    int main() {
        int arr[] = {1, 2, 3, 4, 5, 6};
        int sz = sizeof(arr) / sizeof(arr[0]);
    
        ListNode* plist = createSList(arr, sz);
    
        // 在程序结束前释放链表占用的内存
        destroySList(plist);
    
        return 0;
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47

    JAVA版本

    public class ListNode {
        int val;
        ListNode next;
    
        ListNode(int value) {
            val = value;
            next = null;
        }
    }
    
    public class Main {
        static ListNode createSList(int[] nums) {
            ListNode head = null;
            ListNode tail = null;
    
            for (int num : nums) {
                ListNode newNode = new ListNode(num);
    
                if (tail == null) {
                    head = tail = newNode;
                } else {
                    tail.next = newNode;
                    tail = newNode;
                }
            }
    
            return head;
        }
    
        static void destroySList(ListNode head) {
            while (head != null) {
                ListNode temp = head;
                head = head.next;
                temp = null;
            }
        }
    
        public static void main(String[] args) {
            int[] arr = {1, 2, 3, 4, 5, 6};
            ListNode plist = createSList(arr);
    
            // 在程序结束前释放链表占用的内存
            destroySList(plist);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46

    Python版本

    class ListNode:
        def __init__(self, value):
            self.val = value
            self.next = None
    
    def create_slist(nums):
        head = None
        tail = None
    
        for num in nums:
            new_node = ListNode(num)
    
            if tail is None:
                head = tail = new_node
            else:
                tail.next = new_node
                tail = new_node
    
        return head
    
    def destroy_slist(head):
        while head is not None:
            temp = head
            head = head.next
            temp = None
    
    arr = [1, 2, 3, 4, 5, 6]
    plist = create_slist(arr)
    
    # 在程序结束前释放链表占用的内存
    destroy_slist(plist)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32

    2、如何使用

    在这里插入图片描述
    例如我们想生成listA的链表
    在这里插入图片描述

    只需要修改这里,然后我们就可以得到生成这个链表
    在这里插入图片描述
    这样就可以得到我们需要的链表。

  • 相关阅读:
    性能测试VS负载测试VS压力测试
    JUC(java.util.concurrency)包中常用锁相关类
    创建实例化新表格及新行
    【杂记-浅谈以太网IP数据帧】
    【Java学习笔记(一百二十七)】面向对象(二)之封装、继承、多态
    小程序中自定义组件
    windows10系统64位安装delphiXE11.2完整教程
    图论基础知识 并查集/例题
    快速搭建一个简单的SpringBoot项目-详细步骤
    margin的塌陷现象
  • 原文地址:https://blog.csdn.net/NITIQ/article/details/134430150