用HashTable可不可以删除最后一个添加进表的值啊

时间:2022-03-02 09:51:47
我的想法是有点像栈那种,每次删除都可以删除最后一个进表的值啊?或者是用其他的数据结构

15 个解决方案

#1


最后一个的index就是count-1吧.remove掉不行么?

#2


应该怎样写呢,能否给个代码吗?

#3


HashTable ht=new HashTable()
ht.Add()...;
ht.remove(ht.keys.count);

请问是这样的吗?

#4


请大家说一下啊

#5


不是
Hashtable中元素的顺序不一定是你加入的顺序。
即然像栈那样的,为什么不用Stack呢?

#6


HashTable ht=new HashTable()
ht.Add()...;
ht.remove(ht[j.Keys[j.Keys.Count - 1]]);

试一下。

#7


HashTable是散列存储 何为散列存储?

散列方法的主要思想是根据结点的关键码值来确定其存储地址:以关键码值K为自变量,通过一定的函数关系h(K)(称为散列函数),计算出对应的函数值来,把这个值解释为结点的存储地址,将结点存入到此存储单元中。检索时,用同样的方法计算地址,然后到相应的单元里去取要找的结点。通过散列方法可以对结点进行快速检索。散列(hash,也称“哈希”)是一种重要的存储方式,也是一种常见的检索方法。 

因此其访问机制不是基于地址偏移量或首尾指针来实现的

除非你将key值记录为数据的序号 以此来标示当前数据的顺序性

否则无法实现此效果……

#8


hashtable 跟栈和队列的思路是完全不同的,要想删除最后一个加进来的,必须找到他的KEY。然后
C# 
public virtual void Remove (
Object key
)
 (msdn)

#9


或者用另外的变量保存这个最后添加的值

#10


thanks!

#11


HashTable ht=new HashTable()
ht.Add()...;
ht.remove(ht[j.Keys[j.Keys.Count - 1]]);

试一下。


  
老兄,j是什么意思啊

#12


那你直接用栈嘛,或者将最后一个加入的key保存起来

#13


好的,我明白了,谢谢大家了!

#14


直接用HashTable不可能,不过你可以用stack来存一下加入HashTable的顺序!

#15


当然,如果不是有很频繁的轮循查找,那么也没有必要用HashTable,直接用stack好了

#1


最后一个的index就是count-1吧.remove掉不行么?

#2


应该怎样写呢,能否给个代码吗?

#3


HashTable ht=new HashTable()
ht.Add()...;
ht.remove(ht.keys.count);

请问是这样的吗?

#4


请大家说一下啊

#5


不是
Hashtable中元素的顺序不一定是你加入的顺序。
即然像栈那样的,为什么不用Stack呢?

#6


HashTable ht=new HashTable()
ht.Add()...;
ht.remove(ht[j.Keys[j.Keys.Count - 1]]);

试一下。

#7


HashTable是散列存储 何为散列存储?

散列方法的主要思想是根据结点的关键码值来确定其存储地址:以关键码值K为自变量,通过一定的函数关系h(K)(称为散列函数),计算出对应的函数值来,把这个值解释为结点的存储地址,将结点存入到此存储单元中。检索时,用同样的方法计算地址,然后到相应的单元里去取要找的结点。通过散列方法可以对结点进行快速检索。散列(hash,也称“哈希”)是一种重要的存储方式,也是一种常见的检索方法。 

因此其访问机制不是基于地址偏移量或首尾指针来实现的

除非你将key值记录为数据的序号 以此来标示当前数据的顺序性

否则无法实现此效果……

#8


hashtable 跟栈和队列的思路是完全不同的,要想删除最后一个加进来的,必须找到他的KEY。然后
C# 
public virtual void Remove (
Object key
)
 (msdn)

#9


或者用另外的变量保存这个最后添加的值

#10


thanks!

#11


HashTable ht=new HashTable()
ht.Add()...;
ht.remove(ht[j.Keys[j.Keys.Count - 1]]);

试一下。


  
老兄,j是什么意思啊

#12


那你直接用栈嘛,或者将最后一个加入的key保存起来

#13


好的,我明白了,谢谢大家了!

#14


直接用HashTable不可能,不过你可以用stack来存一下加入HashTable的顺序!

#15


当然,如果不是有很频繁的轮循查找,那么也没有必要用HashTable,直接用stack好了