Sobes.tech
Junior — Middle

Тафовутҳои асосии байни коллексияи навъи Set ва массив дар барномасозӣ кадомҳоянд?

sobes.tech AI

Ҷавоб аз AI

Коллекция типа Set ва массив (List) дар асоси хусусиятҳои асосӣ фарқ мекунанд:

  • Ягонагии элементҳо: Set танҳо элементҳои ягонаро нигоҳ медорад, дуборагӣ автоматӣ нодида гирифта мешавад. Массив метавонад арзишҳои такроршударо дар бар гирад.
  • Тартиби элементҳо: Дар аксари татбиқҳо, Set тартиби элементҳоро кафолат намедиҳад, дар ҳоле ки массив тартиби иловаҳоро нигоҳ медорад.
  • Дастрасӣ бо индекс: Дар массив метавон элементро бо индекс гирифт, дар Set не, зеро он индексгузорӣ нашудааст.
  • Самаранокии амалиёт: Санҷиши мавҷудияти элемент дар Set одатан тезтар (O(1) барои hash set) аст, нисбат ба массив (O(n)).

Масалан дар Dart (Flutter):

var list = [1, 2, 2, 3];
var set = {1, 2, 2, 3};

print(list); // [1, 2, 2, 3]
print(set);  // {1, 2, 3}