Как я могу превратить мои четыре идеальных базовых метода псевдокода в работающий код?

Я пытаюсь выяснить, как я могу превратить мои 4 основных метода псевдокода в моем идеальном хэш-классе в работающие методы, которые в конечном итоге будут использоваться внутри основного метода моего PerfectHash учебный класс. Я знаю, что еще не создал экземпляр класса, но я сделаю это.

Вы знаете, как, например, когда вы вызываете 4 метода с использованием стека, например, вы вводите параметры внутри методов, но мое приложение сможет взять ключ, введенный пользователем, и вставить, извлечь, удалить или обновить его внутри. структуры.

Нужно ли больше думать об этих методах или достаточно псевдокода, чтобы работать на данный момент? Вот что я сделал до сих пор. Я знаю, что первый класс компилируется нормально, но у меня проблемы со вторым классом, как я уже указывал выше.

public class PerfectHash
{

  private StadiumTickets[] data; 


  public boolean insert(StadiumTickets newStadiumTicket)
  {
      // the direct insert hashed algorithm 

       pseudoKey = preProcessing(targetKey); 
       ip = pseudoKey; // direct hashing function 

       // insert the new ticket
        data[ip] = newStadiumTicket.deepCopy(); 
  }

  public StadiumTickets fetch(String targetKey)
  {

    // the fetch algorithm 
    // access the primary storage area 

     pseudoKey = preprocessing(targetKey); 
     ip = pseudoKey; // direct hashing function 

    if(data[ip]== null)
     { 
         return null; 
     } 
     else
     {
        return data[ip].deepCopy(); 
     }
   } 

   public boolean delete(String targetKey)
   { 
      // the delete direct hashed algorithm 

      // access the primary storage area 

         pseudoKey = preprocessing(targetKey);

       ip = pseudoKey; // direct hashing function 

      if(data[ip]== null)
      { 
         return false; 
       } 
      else 
      { 
        data[ip]= null;                      
        return true; 
      }
    } 
    public boolean update(String targetKey, StadiumTickets newStadiumTicket)
    {
        // the update direct hashed algorithm 

       if(delete(targetKey) == false)
           return false; 
       else 
        {
           insert(newStadiumTicket) 
             return true;
         }
     }

}
import java.util.Scanner; 

public class StadiumTickets
{

     int ticketNumber; // keyfield

     String purchaserName; 


  public void input()
  {

     Scanner input= new Scanner(System.in);

      // key values ranges between 2000 to 100,000 


      System.out.print("Please enter a ticket number between 2000 to 100,000: "); 

      // a variable to hold the answer

       ticketNumber= input.nextInt(); 


        // error checking to make sure the user doesn't enter a key outside of the lower or upper ranges

       if(ticketNumber < 2000 && ticketNumber > 100000) 
        System.out.println("This number is not a valid entry to input into the structure.");
     }

  public StadiumTickets(int ticketNumber, String purchaserName)
  {

       this.ticketNumber= ticketNumber; 
       this.purchaserName= purchaserName; 
   } 



   public StadiumTickets deepCopy()
   { 

      StadiumTickets clone= new StadiumTickets(ticketNumber, purchaserName); 
       return clone; 
   }  
}

0 ответов

Другие вопросы по тегам