zoukankan      html  css  js  c++  java
  • 《挑战2》散列法

    Search III

    Your task is to write a program of a simple dictionary which implements the following instructions:

    • insert str: insert a string str in to the dictionary
    • find str: if the distionary contains str, then print 'yes', otherwise print 'no'

    Input

    In the first line n, the number of instructions is given. In the following n lines, n instructions are given in the above mentioned format.

    Output

    Print yes or no for each find instruction in a line.

    Constraints

    • A string consists of 'A', 'C', 'G', or 'T'
    • 1 ≤ length of a string ≤ 12
    • n ≤ 1000000

    Sample Input 1

    5
    insert A
    insert T
    insert C
    find G
    find A
    

    Sample Output 1

    no
    yes
    

    Sample Input 2

    13
    insert AAA
    insert AAC
    insert AGA
    insert AGG
    insert TTT
    find AAA
    find CCC
    find CCC
    insert CCC
    find CCC
    insert T
    find TTT
    find T
    

    Sample Output 2

    yes
    no
    no
    yes
    yes
    yes

    本题采用的是双散列结构,其他的散列方式还没有尝试,以后有时间可以套进去试一下。
    本题主要分为两部分:
    1.将字符串转换通过合适的方法转换为一个整数值,这个合适的意思是尽量将元素分散,均匀分布
    2.将这个整数值通过双散列法转换为一个散列值



  • 相关阅读:
    java实现还款计算
    java实现风险度量
    java实现字符串比较
    java实现风险度量
    java实现风险度量
    java实现还款计算
    java实现还款计算
    java实现字符串比较
    java实现字符串比较
    java实现风险度量
  • 原文地址:https://www.cnblogs.com/yzz0110/p/8040442.html
Copyright © 2011-2022 走看看