数据结构----城市链表

本文介绍了如何使用链表数据结构存储城市信息,包括城市名和位置坐标,并详细阐述了如何进行查找、插入、删除和更新等操作。通过定义节点结构和封装单链表,可以实现基于城市名和位置坐标的有效查询,例如找到指定城市的位置坐标,以及找出距离特定坐标在一定范围内的城市。
摘要由CSDN通过智能技术生成

题目描述

[问题描述]
将若干城市的信息,存入一个带头结点的单链表。结点中的城市信息包括:城市名,城市的位置坐标。要求能够利用城市名和位置坐标进行有关查找、插入、删除、更新等操作。
[基本要求]
(1) 给定一个城市名,返回其位置坐标;
(2) 给定一个位置坐标P和一个距离D,返回所有与P的距离小于等于D的城市。

效果图:
在这里插入图片描述

过程实现

首先定义一个结点 ,包括数据Data,指针Next

    //定义每个结点
    public class SNode<T> where T : IComparable<T>
    {
   
        //定义数据部分(属性)
        public T Data {
    get; set; }
        //后继结点指针部分(属性)
        public SNode<T> Next {
    get; set; }
        //无后继指针方法,构造函数
        public SNode(T data)
        {
   
            Data = data;
            Next = null;
        }
        //有后继指针方法,构造函数
        public SNode(T data, SNode<T> next)
        {
   
            Data = data;
            Next = next;
        }
    }

对单链表进行封装,单链表遍历
在这里插入图片描述
在这里插入图片描述
创建一个CityData封装城市信息包括城市得名称与坐标
在这里插入图片描述
在这里插入图片描述
最后创建窗体
在这里插入图片描述
在这里插入图片描述
窗体样本
在这里插入图片描述

运行效果图
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DataStruct
{
   
    //定义每个结点
    public class SNode<T> where T : IComparable<T>
    {
   
        //定义数据部分(属性)
        public T Data {
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值