해시 링크 찾기

959 단어 데이터 구조
#define MAX 10
        
//      
typedef struct list  
{
	int data;
	list *next;
}*pList;

list hashtable[MAX];  ///         ,MAX      hash  

//     
int hashFunc(int n)   
{
	return n%MAX;
}

//  hash  
void createhash(int *array,int n)  
{
	pList p,pNew;
	for (int i=0;idata=array[i];
		pNew->next=NULL;
		
		int pos=hashFunc(array[i]);
		p=hashtable[pos].next;
		
		if (p!=NULL)         //              
		{
			pNew->next=p;
			hashtable[pos].next=pNew;
		} 
		else
		{
			hashtable[pos].next=pNew;
		}
	}
}

//hash  
bool SearchHash(int val)   
{
	int pos=hashFunc(val);        //     hash  
	pList p=hashtable[pos].next;  //       
	while(p!=NULL)
	{
		if(p->data==val)
			return true;
		p=p->next;
	}
	
	return false;
}

//  hashtable
void TraverseHashtable()
{
	for (int m=0;mdata<next;
		}
	}
	cout<

좋은 웹페이지 즐겨찾기