Beispiel #1
0
int main(int argc, char** argv) {
    struct hash_tablosu *htable=NULL;
    
    initialize_hash_table(&htable,3,5);
    print_hash_table(htable); 
    insert_hash_table(htable,"kadayif");
    insert_hash_table(htable,"Trabzonspor");
    insert_hash_table(htable,"kadayif");
    insert_hash_table(htable,"gundogdu");
    insert_hash_table(htable,"besiktas");
    insert_hash_table(htable,"baklava");
    insert_hash_table(htable,"dembaba");
    insert_hash_table(htable,"cardoza");
    
   
    print_hash_table(htable);
    
    hash_table_buyut(&htable,17,19);
    print_hash_table(htable);
    
    insert_hash_table(htable,"ankara");
    insert_hash_table(htable,"Ankara");
    print_hash_table(htable);
    return (EXIT_SUCCESS);
}
Beispiel #2
0
void hash_table_buyut(struct hash_tablosu **htable,
          int multiplier, int tablo_uzunlugu){
    int i;
    struct CELL *liste_basi;
    struct hash_tablosu *yeni_tablo;
    
    if(*htable){
    initialize_hash_table(&yeni_tablo, multiplier, tablo_uzunlugu);
    for(i=0; i<(*htable)->tablo_uzunlugu; i++){
        liste_basi=((*htable)->tablo_basi+i)->header;
        while(liste_basi!=NULL){
            insert_hash_table(yeni_tablo,liste_basi->anahtar);
            liste_basi=liste_basi->next;
        }
    }
    hash_table_yok_et(htable);
    *htable=yeni_tablo;
    }   
}
int
cc_send_req_xid(cc_xid_table_t *xid_table, int xid_prev)
{
    int ret;
    hash_table_node_t find;
    int xid;

    find = NULL;
    xid = cc_xid_alloc(xid_prev);
    ret = hash_search(xid_table->hash_table, xid, &find);
    if( ret != CC_E_ERR && find != NULL)
    {  
        return CC_E_ERR;
    }
    
    ret = insert_hash_table(xid_table->hash_table, xid);
    if(ret == CC_E_ERR)
        return CC_E_ERR;

    xid_table->count++;
    return CC_E_NONE;
}