news 2026/6/10 11:02:43

哈希表与堆栈:数据存储全解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
哈希表与堆栈:数据存储全解析

《hash表》

//数组结构:长度是固定 类型是固定
int[] is1 = { 1, 2, 3 };

//动态集合:长度不固定,类型不固定,存储是object类型
ArrayList list= new ArrayList();
//泛型集合:长度不固定,类型固定
List<int>list1= new List<int>();

//字典:长度不固定 类型固定
Dictionary<int,int> dict=new Dictionary<int,int>();

//hash表:和字典很类似,以存储时候也是键值对的方法进行存储的,通过键获取对应的值,和字典不同地方在于,哈希表存储键值对类型不固定
Hashtable hashtable = new Hashtable();//创建hash表
hashtable.Add(1,2);//添加键值对
hashtable.Add("name", "张三");
//2查询键对应的值
Console.WriteLine(hashtable[1]);//获取对应键的值

//3遍历hash所有的keys
foreach (var item in hashtable.Keys)
{
Console.WriteLine(item+"----------");
}
//4遍历hash所有的values
foreach (var item in hashtable.Values)
{
Console.WriteLine(item+"++++++=");
}
object[]keys=new object[hashtable.Count];//定义object类型数组
hashtable.Keys.CopyTo(keys, 0);//把hashtable.Keys所有元素复制到keys
//foreach (var item in hashtable)
//{
// Console.WriteLine(item+"+++++==");
//}
//6清空键值对值
//hashtable.Clear();
//7指定键进行移除
//hashtable.Remove(1);
//8 包含这个键
Console.WriteLine(hashtable.ContainsKey("name"));
//9修改
hashtable["name"] = "你好";
//10 键值对个数
Console.WriteLine(hashtable.Count);
//5遍历hash所有键值对
foreach (DictionaryEntry item in hashtable)
{
Console.WriteLine(item.Value+"------");
}

《堆栈》

//栈和队列
//本节是按照线性数据结构,数据存储方式进行对比的

//栈:对要操作元素会进行一个后进先出的操作,例如:现实场景电梯,先进去的人最后才出来,后进去的人先出来
//添加元素称为出栈操作
//取出一个元素操作称为出栈
Stack<string>stack=new Stack<string>();//存放字符串栈结构
stack.Push("张三");//入栈
stack.Push("李四");
stack.Push("王五");

string name =stack.Pop();//出栈
Console.WriteLine(name+"--------");//王五
Console.WriteLine(stack.Peek());//获取栈顶元素 李四
Console.WriteLine(stack.Count);//2个
//stack.Clear;清空栈
//stack.ToArray();//转成数组

//队列:对元素进行先进先出的操作 例如显示场景排队买饭
//添加元素一般入队操作
//取出元素一般出队=操作
Queue<string>queue = new Queue<string>();
queue.Enqueue("马化腾");//入队
queue.Enqueue("马云");
queue.Enqueue("马嘉祺");
Console.WriteLine(queue.Count);
Console.WriteLine(queue.Dequeue());//出队马化腾
Console.WriteLine(queue.Peek());//获取对顶元素马云

// queue.Clear();//清空队列


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 12:25:57

2025年中国消费蝶变:“超级供应链”如何重构供需逻辑?

文/李乐编辑/子夜2025年的中国消费市场&#xff0c;藏着太多看似偶然的走红&#xff1a;Labubu盲盒热销&#xff0c;其隐藏款溢价翻几倍&#xff0c;奶皮子糖葫芦火到全国大街小巷&#xff0c;景德镇鸡排哥的摊位前总排着长队&#xff0c;《疯狂动物城2》的周边刚上架就售罄………

作者头像 李华
网站建设 2026/6/10 13:36:20

DNF私服增幅31的bug?这个你知道吗?

DNF是一款深受玩家喜爱的多人在线角色扮演游戏。自2008年在中国上线以来&#xff0c;凭借其独特的横版过关玩法和丰富的职业系统吸引了大量忠实粉丝。然而&#xff0c;随着游戏的发展&#xff0c;一些玩家开始寻求不同于官方服务器的游戏体验&#xff0c;这催生了“私服”的出现…

作者头像 李华
网站建设 2026/6/10 0:25:57

线性拟合模型

线性拟合模型 一、数据准备部分 import numpy as np import keras import matplotlib.pyplot as plttrain_X np.asarray([30.0,40.0,60.0,80.0,100.0,120.0,140.0]) train_Y np.asarray([320.0,360.0,400.0,455.0,490.0,546.0,580.0]) train_X / 100.0 train_Y / 100.0train_…

作者头像 李华
网站建设 2026/5/22 13:39:36

深度学习入门

文章目录一、什么是深度学习&#xff1f;二、神经网络基础1. 神经元与权重2. 激活函数三、从感知器到多层感知器1. 感知器&#xff08;Perceptron&#xff09;2. 多层感知器&#xff08;MLP&#xff09;四、神经网络的训练方法1. 损失函数2. 梯度下降3. 反向传播&#xff08;Ba…

作者头像 李华
网站建设 2026/6/10 11:58:27

程序员接单:2025 全渠道平台指南与实操建议

目录 引程聚宝UpworkFiverr猪八戒网Freelancer一品威客ToptalRemoteOKWeWorkRemotelyCodementorTopcoderGuru结语 引 近年来&#xff0c;程序员接单成为越来越多开发者提升收入与积累项目经验的重要方式。市场环境变化、就业结构调整、远程协作的普及&#xff0c;让自由接单从…

作者头像 李华