C#练习题——LinkedList 的进阶应用与测试

一、任务:使用Linkedlist,向其中加入10个随机整形变量

(1)正向遍历一次打印出信息
(2)反向遍历一次打印出信息


二、代码解析与实现细节

using System;
using System.Collections.Generic;

namespace 进阶测试
{
    class Program
    {
        static void Main(string[] args)
        {
            LinkedList<int> list = new LinkedList<int>();
            int num;
            for (int i = 0; i < 10; i++)
            {
                num = new Random().Next(1, 101);
                list.AddLast(num);
            }
        }
    }
}
 

使用 LinkedList<int> 创建动态链表结构,避免数组的固定大小限制。

通过 Random().Next(1, 101) 生成1到100的随机数,模拟实际数据场景。


三、链表遍历技术

//正向遍历
LinkedListNode<int> node = list.First;
while (node != null)
{
    Console.WriteLine(node.Value);
    node = node.Next;
}

//反向遍历
node = list.Last;
while (node != null)
{
    Console.WriteLine(node.Value);
    node = node.Previous;
}
 
  • 正向遍历通过 First 属性获取头节点,Next 指针逐步移动。
  • 反向遍历利用 Last 属性定位尾节点,Previous 指针实现逆向访问。

四、完整代码

using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Threading.Tasks;
using System.Xml.Linq;

namespace 进阶测试
{
    class Program
    {
        static void Main(string[] args)
        {
            LinkedList<int> list = new LinkedList<int>();
            int num;
            for (int i = 0; i < 10; i++)
            {
                num = new Random().Next(1, 101);
                list.AddLast(num);
            }
            Console.WriteLine("*****************");
            //正向打印
            LinkedListNode<int> node = list.First;
            while (node != null)
            {
                Console.WriteLine(node.Value);
                node = node.Next;
            }
            Console.WriteLine("*****************");
            //反向打印
             node = list.Last;
            while (node != null)
            {
                Console.WriteLine(node.Value);
                node = node.Previous;
            }
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值