您的位置:首页 > 其它

公司的技能鉴定上机题——Hash冲突排序算法2

2012-04-12 17:12 288 查看
公司的技能鉴定上机题——Hash冲突排序算法

DWORD SortByCount::GetHashIndex(DWORD dwHashKey)

{

 return dwHashKey % HASH_SIZE;//返回最后三位数,HASH_SIZE==1000

}

DWORD SortByCount::InsertToHash(DWORD dwValue)

{

 DWORD dwHashIndex = GetHashIndex(dwValue);

 HashList HashHead = m_HashBucket[dwHashIndex];

 //申请节点内存

    DataNode * s = (DataNode*)pmalloc(sizeof(DataNode));

 

 //赋值

    s->dwValue = dwValue;

    s->next = NULL;

 s->prev = NULL;

    //插入链表

    if(0 == HashHead->size)

    {

        //第一次插入节点

        HashHead->Head = s;

  HashHead->Tail = s;

    }

    else

    {

        //插入尾部

  s->prev = HashHead->Tail;

        HashHead->Tail->next = s;

        HashHead->Tail = s;

    }

    HashHead->size++;

 return SUCCESS;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法 null