Производительность Hash Set и Array List

Я реализовал метод, который просто зацикливается на наборе CSV-файлов, содержащих данные о нескольких разных модулях. Затем это добавляет 'moduleName' в hashSet. (Код показан ниже)

Я использовал hashSet, так как он гарантирует, что дубликаты не будут вставлены, вместо ArrayList, который должен был бы использовать метод contains() и выполнять итерацию по списку, чтобы проверить, существует ли он уже.

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

Кроме того, может ли кто-нибудь объяснить мне:

  1. Как работать с производительностью для каждой структуры данных, если она используется?
  2. В чем сложность использования нотации «большое О»?

    HashSet modulesUploaded = new HashSet();
    для (Файл f: marksheetFiles){
    пытаться {
    csvFileReader = новый CSVFileReader(f);
    csvReader = csvFileReader.readFile();
    csvReader.readHeaders();
    
    в то время как (csvReader.readRecord()) {
    Строка moduleName = csvReader.get("Модуль");
    
    если (!имямодуля.isEmpty()){
    modulesUploaded.add (имя модуля);
     }
     }
    
     } поймать (IOException e) {
    e.printStackTrace();
     }
    
    csvReader.close();
    }
    модули возврата загружены;
    

    }

36
задан keno 5 March 2016 в 12:47
поделиться