Я реализовал метод, который просто зацикливается на наборе CSV-файлов, содержащих данные о нескольких разных модулях. Затем это добавляет 'moduleName' в hashSet. (Код показан ниже)
Я использовал hashSet, поскольку он гарантирует, что дубликаты не будут вставлены вместо ArrayList, который должен был бы использовать метод contains() и выполнять итерацию по списку, чтобы проверить, существует ли он уже.
Я считаю, что использование набора хэшей имеет лучшую производительность, чем список массивов. Я правильно это утверждаю?
Кроме того, может кто-нибудь объяснить мне:
- Как работать с производительностью для каждой структуры данных, если она используется?
В чем сложность использования нотации big-O?
HashSet<String> modulesUploaded = new HashSet<String>(); for (File f: marksheetFiles){ try { csvFileReader = new CSVFileReader(f); csvReader = csvFileReader.readFile(); csvReader.readHeaders(); while(csvReader.readRecord()){ String moduleName = csvReader.get("Module"); if (!moduleName.isEmpty()){ modulesUploaded.add(moduleName); } } } catch (IOException e) { e.printStackTrace(); } csvReader.close(); } return modulesUploaded;
}