| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1375 人关注过本帖
标题:散列存储与冲突处理
只看楼主 加入收藏
wd304
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-12-6
收藏
 问题点数:0 回复次数:2 
散列存储与冲突处理
怎样将录入的学生学号按散列存储,并用拉链法解决冲突呢?
搜索更多相关主题的帖子: 散列存储、冲突 
2008-12-09 12:37
geninsf009
Rank: 3Rank: 3
等 级:论坛游民
威 望:8
帖 子:613
专家分:95
注 册:2008-8-16
收藏
得分:0 
就开散列的方法啊.你先定义一个散列表的结点结构,
每个结构中含有一个指针域,指向发生冲突的元素的链表,你可以参照我的开散列存储结构的定义来写程序:
/////////////////////////////////////////////////////////////
//HashNode结构的定义 即开散列表的结点的定义
/////////////////////////////////////////////////////////////
template<class T>
struct HashNode
{
    T key;            //结点的关键码域
    HashNode<T>* link;//结点的指针域
    HashNode(T x)     //构造函数
    {key=x;link=NULL;};
};
/////////////////////////////////////////HashNode结构定义结束

/////////////////////////////////////////////////////////////
//OpenHashTable类模板的实现
//即以开散列的方式实现的哈希表
/////////////////////////////////////////////////////////////
template<class T>
class OpenHashTable
{
private:
    int divisor;                    //除数(必须是质数)
    int TableSize;                  //表的大小
    HashNode<T>** ht;               //开散列表,即同义词链表的首指针的定义
   
public:
    OpenHashTable(int div,int sz);  //构造函数
    ~OpenHashTable();               //析构函数
    HashNode<T>* FindPos(T x)const; //找指定关键码的结点的指针

   
    bool Insert(const T x);         //把关键码为x的结点插入到开散列表中
    bool Remove(const T x);         //删除指定关键码的结点

    //友元重载<<运算符输出开散列表的内容
    friend ostream& operator<<(ostream& os,OpenHashTable<T>& OPHT);
};
//////////////////////////////////OpenHashTable类模板声明结束
2008-12-09 16:19
liguohai
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-12-11
收藏
得分:0 
哈哈 你是做数据结构综合实验的?
数据结构综合实验
实验内容:
·学生 数据结构成绩 管理系统
[基本要求]

(1)学生信息及成绩的录入
    要求包括的学生信息有:学号,姓名,性别,出生日期,民族 及数据结构成绩(具体内容可自行假设,至少录入10名以上学生).
    所录入的学生按学号散列存储(散列函数为 学号%5 取整,如 1002%5 =2),采用拉链法解决冲突.

(2)学生成绩的查询
    要求根据提供的学号完成学生成绩的查询(必须采用散列查找).

(3)学生成绩的分段统计和排序输出
    统计出各分数段学生人数(60分以下,60~70,71~80,...)
    采用堆排序,将学生成绩从高到低排序输出.


这个???  我有加QQ394222199我告诉你吧!加我时候注明成绩管理哦
2008-12-11 11:15
快速回复:散列存储与冲突处理
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020024 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved