网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月18日漏签0天
python吧 关注:476,496贴子:1,972,387
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 9回复贴,共1页
<<返回python吧
>0< 加载中...

哈希表解决冲突问题,考试例题急求大神们指导=A=

  • 只看楼主
  • 收藏

  • 回复
  • Korein娘
  • 白丁
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
题目大概要求是这样的,老师她给了一个半成品的code,然后要我们完成。code是关于哈希表用拉链法结合linked list解决冲突。如下是她给的code:
# Do not modify the Node ADTclass Node: def __init__(self, data): self.data = data self.next = None# Do not modify the LinkedList ADT class LinkedList: def __init__(self): self.head = None def add(self, data): temp = self.head self.head = Node(data) self.head.next = temp def __str__(self): str_list = [] current = self.head while current: str_list.append(str(current.data)) current = current.next return "[" + "->".join(str_list) + "]" # Implement the missing functions in the ChainedHashTable ADT class ChainedHashTable: # your code here pass # Sample testing code# You should test your ADT with other input as wellcht = ChainedHashTable(11)cht.insert(1)cht.insert(36)cht.insert(3)cht.insert(44)cht.insert(91)cht.insert(54)cht.insert(18)print(cht)
node和linkedlist是不能改的,只能从hashtable那个开始。另外哈希表中每次加入只考虑添加key的情况,不用同时添加key/value的格式。弄完之后test的结果要和下图相同:

自己试了一下午总是出各种各样的bug= =主要是不知道如何在哈希表中添加linked list,有谁知道具体做法的还请指教一下。。。


  • Korein娘
  • 白丁
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
1L的code太乱了,这里补上正常的
# Do not modify the Node ADT
class Node:
def __init__(self, data):
self.data = data
self.next = None
# Do not modify the LinkedList ADT
class LinkedList:
def __init__(self):
self.head = None
def add(self, data):
temp = self.head
self.head = Node(data)
self.head.next = temp
def __str__(self):
str_list = []
current = self.head
while current:
str_list.append(str(current.data))
current = current.next
return "[" + "->".join(str_list) + "]"
# Implement the missing functions in the ChainedHashTable ADT
class ChainedHashTable:
# your code here
pass
# Sample testing code
# You should test your ADT with other input as well
cht = ChainedHashTable(11)
cht.insert(1)
cht.insert(36)
cht.insert(3)
cht.insert(44)
cht.insert(91)
cht.insert(54)
cht.insert(18)
print(cht)


2025-08-18 04:40:00
广告
不感兴趣
开通SVIP免广告
  • 江湖程序员(大号)
  • 状元
    15
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
把问题描述具体清晰,若是描述不清就列出:输入样例和输出样例。这样才好对症下药,


  • Korein娘
  • 白丁
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
是这样的,这道题目要求完成一个code,我放在2楼了,然后最下面几行是test代码,也就是输出样例,然后贴的图片就是输出样例。其实就是要做个不会出现冲突的哈希表class,然后要求用linkedlist的拉链法解决冲突= =但是我们没讲过例子,我也搜不到别的类似代码所以不知道怎么下手。。。


  • 江湖程序员(大号)
  • 状元
    15
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
现在在外面没带电脑,手机端上网无法看清图片中的文字,贴出原文,并把问题描述具体清晰,若是描述不清就列出:输入样例和输出样例。这样才好一行解决,


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 9回复贴,共1页
<<返回python吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示