none
SOS 关于哈希表 RRS feed

  • 问题

  • 什么是哈希表

    如果要用哈希表来统计一段程序中的关键字如 if while 等出现的频率该怎么做??
    2008年10月10日 4:31

全部回复

  • Code Snippet
    Hashtable ht = new Hashtable();
                ht["if"] = 0;

     

     


    Code Snippet
                ht["if"] =(int)ht["if"] + 1;
                MessageBox.Show(ht["if"].ToString());

     

     

    2008年10月10日 4:51
    版主
  •  

    有一道关与程序相似性检验的问题,编程时需用到哈希表,我不懂什么是哈希表?哈希表要怎么用?如何用用哈希表来计算给定的源程序中出现的关键字的频度,以此来判断程序的相似性?
    2008年10月10日 4:56
  •  

    哈希表是一种集合,它的特点是以键值对保存数据,用法如下:

     

    using System.Collections;

    HashTable ht=new HashTable();

    ht.Add(键,值);

    键和值的类型是object。

    当然取的时候就按键取值。并且键是不可以重复的,还要一点1与'1',"1",因为类型不同,是可以同时作为键值的。

     

    你说的程序的相似性,这个说法很笼统,究竟相似到什么程度为相似性,没有一个定量。

    2008年10月10日 15:48
    版主
  • 哈希算法是这样一种算法,对相对较多的内容执行一种运算,得出一个内容相对较小的值(哈希值),这个值包含了原始内容的一些特点。也就是说,如果原始内容不同,通过这种算法得出相同哈希值的概率做到了最小(当然还是有一定概率的,毕竟哈希值比原始数据要少嘛)

    2008年10月13日 7:17