Beispiel #1
0
        // Вставка в хештаблицу
        public void Insert(Guest guest)
        {
            table = Program.table;
            //Guest newGuest = new Guest();
            long hash = guest.GetKey() % Convert.ToInt64(size);

            while (table[hash] != null && table[hash].GetKey() % size != guest.GetKey() % size)
            {
                hash = (hash + 1) % size;
            }
            if (table[hash] != null && hash == table[hash].GetKey() % size)
            {
                guest.SetNextNode(table[hash].GetNextNode());
                table[hash].SetNextNode(guest);
                isEmpty = false;
                count++;
                return;
            }
            else
            {
                table[hash] = guest;
                isEmpty     = false;
                count++;
                return;
            }
        }