Пояснительная записка к курсовой работе по дисциплине «Структуры и алгоритмы обработки данных»
string n="";
int p=0;
if(ht[i]!=null){
n=ht[i].name;
p=ht[i].page;
}
system.out.print("in:"+i);
system.out.print(" name:"+n);
system.out.println(" , page:"+p);
}
}
//функция добавления элемента
public void add(book b){
if(ht[hf(b)]==null){
ht[hf(b)]=b;
}else{
int h=hf(b);
int sw=0;
while(true){
col++;
if(ht[hf2(b,h)]==null){
ht[hf2(b,h)]=b;
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
}
}else{
h=hf2(b,h);}
}
sw++;
}
}
}
//функция удаления элемента
public void del(string s,int p){
book b = new book(s,p);
if(ht[hf(b)]!=null && b.name.equals(ht[hf(b)].name) && b.page==ht[hf(b)].page ){
ht[hf(b)]=null;
}else{
int h=hf(b);
int sw=0;
while(true){
if(ht[hf2(b,h)]!=null && b.name.equals(ht[hf2(b,h)].name) && b.page==ht[hf2(b,h)].page ){
ht[hf2(b,h)]=null;
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
break;
}
}else{
h=hf2(b,h);
}
}
sw++;
}
}
}
//функция поиска элемента
public void search(string s,int p){
book b = new book(s,p);
if(ht[hf(b)]!=null && b.name.equals(ht[hf(b)].name) && b.page==ht[hf(b)].page ){
system.out.println("book: "+b.name+" ("+b.page+") is found at index "+hf(b));
}else{
int h=hf(b);
int sw=0;
while(true){
if(ht[hf2(b,h)]!=null && b.name.equals(ht[hf2(b,h)].name) && b.page==ht[hf2(b,h)].page ){
system.out.println("book: "+b.name+" ("+b.page+") is found at index "+hf2(b,h));
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
break;
}
}else{
h=hf2(b,h);
}
}
sw++;
}
}
}
//функция поиска элемента
public void search_2(string s,int p){
book b = new book(s,p);
if(ht[hf_2(b)]!=null && b.name.equals(ht[hf_2(b)].name) && b.page==ht[hf_2(b)].page ){
system.out.println("book: "+b.name+" ("+b.page+") is found at index "+hf_2(b));
}else{
int h=hf_2(b);
int sw=0;
while(true){
if(ht[hf2(b,h)]!=null && b.name.equals(ht[hf2(b,h)].name) && b.page==ht[hf2(b,h)].page ){
system.out.println("book: "+b.name+" ("+b.page+") is found at index "+hf2(b,h));
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
break;
}
}else{
h=hf2(b,h);
}
}
sw++;
}
}
}
//функция поиска элемента
public void search_3(string s,int p){
book b = new book(s,p);
if(ht[hf_3(b)]!=null && b.name.equals(ht[hf_3(b)].name) && b.page==ht[hf_3(b)].page ){
system.out.println("book: "+b.name+" ("+b.page+") is found at index "+hf_3(b));
}else{
int h=hf_3(b);
int sw=0;
while(true){
if(ht[hf2(b,h)]!=null && b.name.equals(ht[hf2(b,h)].name) && b.page==ht[hf2(b,h)].page ){
system.out.println("book: "+b.name+" ("+b.page+") is found at index "+hf2(b,h));
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
break;
}
}else{
h=hf2(b,h);
}
}
sw++;
}
}
}
//функция удаления элемента
public void del_2(string s,int p){
book b = new book(s,p);
if(ht[hf_2(b)]!=null && b.name.equals(ht[hf_2(b)].name) && b.page==ht[hf_2(b)].page ){
ht[hf_2(b)]=null;
}else{
int h=hf_2(b);
int sw=0;
while(true){
if(ht[hf2(b,h)]!=null && b.name.equals(ht[hf2(b,h)].name) && b.page==ht[hf2(b,h)].page ){
ht[hf2(b,h)]=null;
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
break;
}
}else{
h=hf2(b,h);
}
}
sw++;
}
}
}
//функция удаления элемента
public void del_3(string s,int p){
book b = new book(s,p);
if(ht[hf_3(b)]!=null && b.name.equals(ht[hf_3(b)].name) && b.page==ht[hf_3(b)].page ){
ht[hf_3(b)]=null;
}else{
int h=hf_3(b);
int sw=0;
while(true){
if(ht[hf2(b,h)]!=null && b.name.equals(ht[hf2(b,h)].name) && b.page==ht[hf2(b,h)].page ){
ht[hf2(b,h)]=null;
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
break;
}
}else{
h=hf2(b,h);
}
}
sw++;
}
}
}
//функция добавления элемента
public void add_2(book b){
if(ht[hf_2(b)]==null){
ht[hf_2(b)]=b;
}else{
int h=hf_2(b);int sw=0;
while(true){
col++;
if(ht[hf2(b,h)]==null){
ht[hf2(b,h)]=b;
break;
}else{
if(sw>10){
h++;
h%=hashsize;
if(sw>hashsize){
system.out.println("oops");
}
}else{
h=hf2(b,h);}
}sw++;
}
}
}
//функция добавления элемента
public void add_3(book b){
if(ht[hf_3(b)]==null){
ht[hf_3(b)]=b;
}else{
int h=hf_3(b);int sw=0;
while(true){
col++;
if(ht[hf2(b,h)]==null){
ht[hf2(b,h)]=b;
break;
}else{
if(sw>10){
h++;
h%=hashsize;
}else{
h=hf2(b,h);}
}sw++;
}
}
}
}
Public class main {
public static void main(string[] args) {
//создание хеш-таблицы размерность 10
hashtable table= new hashtable(10);
book b= new book("world art",100);
system.out.println("добалена книга:"+b.name);
table.add(b); //добавление элементов в хеш-таблицу
book b1= new book("saod",340);
system.out.println("добалена книга:"+b1.name);
table.add(b1); //добавление элементов в хеш-таблицу
system.out.println("хеш таблица:");
table.showtable(); //вывод на экран хеш-таблицы
system.out.println("поиск книги 'world art':");
table.search("world art", 100);
system.out.println("удаление книги 'saod':");
table.del("saod", 340); //удаления элемента из таблицы
system.out.println("хеш таблица:");
table.showtable();//вывод на экран хеш-таблицы
}
}
страница 1 ... страница 4страница 5страница 6страница 7
скачать
Другие похожие работы: