⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class1.cs

📁 C#2005 实例源代码
💻 CS
字号:
using System;
using System.Collections;

namespace Hashtable_Create
{
	/// <summary>
	/// Hashtable示例:构造一个哈西表
	/// 哈西函数:key = value % 13
	/// </summary>
	class MyHashtable
	{
		public Hashtable htResult=new Hashtable();	//所构造的哈西表

		/// <summary>
		/// 向哈西表中添加一个新的元素
		/// </summary>
		/// <param name="_intNewItem">所要添加的元素</param>
		public void AddItem(int _intNewItem)
		{
			//定义变量
			int pkey=_intNewItem % 13;
			int i=0;

			//线性散列,寻找合适散列位置
			while(this.htResult.Contains(pkey) && i<13)
			{
				pkey=pkey+1%13;
				i++;
			}

			//添加元素
			if(i<13)
				this.htResult.Add(pkey,_intNewItem);
			else
				Console.WriteLine("哈西表溢出。");
		}

		/// <summary>
		/// 应用程序的主入口点。
		/// </summary>
		[STAThread]
		static void Main(string[] args)
		{
			//实例化MyHashtable对象
			MyHashtable myht=new MyHashtable();
			int pValue=0;
			Console.WriteLine("输入10个整数值:");
			
			//利用MyHashtable的AddItem循环添加数据
			for(int i=0;i<10;i++)
			{				
				pValue=Convert.ToInt32(Console.ReadLine());
				myht.AddItem(pValue);
			}

			//利用foreach语句和DictionaryEntry结构,输出哈西表
			foreach(System.Collections.DictionaryEntry pair in myht.htResult)
			{
				Console.WriteLine("{0}->{1}",pair.Key,pair.Value);
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -