Sobes.tech
Junior

Milleks kasutatakse map ja set andmestruktuure?

sobes.tech AI

Vastus AI-lt

Map ja Set on andmekogumid.

  • Map: Hoidab paare võtme ja väärtuse. Võtmed võivad olla mis tahes tüüpi. Annab kiire juurdepääsu, lisamise ja kustutamise võimaluse võtme järgi. Toetab elementide sisestamise järjekorda.

    // Map loomine
    const myMap = new Map();
    
    // Elementide lisamine
    myMap.set('user1', { name: 'John', age: 30 });
    myMap.set(1, 'number key');
    
    // Väärtuse saamine võtme järgi
    const userData = myMap.get('user1'); // { name: 'John', age: 30 }
    
    // Kasutades võtme olemasolu kontrolli
    const hasKey = myMap.has(1); // true
    
    // Elementi kustutamine võtme järgi
    myMap.delete('user1');
    
    // Map suurus
    const size = myMap.size; // 1
    
    // Iteratsioon Map-i üle
    for (const [key, value] of myMap) {
      console.log(`${key}: ${value}`);
    }
    
  • Set: Hoidab unikaalseid väärtusi mis tahes tüüpi. Annab kiire kontrolli, kas element on olemas, ning võimaldab lisada ja kustutada elemente. Toetab elementide sisestamise järjekorda.

    // Set loomine
    const mySet = new Set();
    
    // Elementide lisamine
    mySet.add(1);
    mySet.add('tere');
    mySet.add(1); // Duplikaat, ei lisandu
    
    // Väärtuse olemasolu kontroll
    const hasValue = mySet.has('tere'); // true
    
    // Elementi kustutamine
    mySet.delete(1);
    
    // Set suurus
    const size = mySet.size; // 1
    
    // Iteratsioon Set-i üle
    for (const value of mySet) {
      console.log(value);
    }
    

Map kasutamine on eelistatud, kui on vaja hoida andmeid, mis on seotud unikaalsete identifikaatoritega (võtmed), ning teha kiire otsing nende järgi. Set kasutatakse unikaalsete väärtuste kogumi hoidmiseks ja nende olemasolu kontrollimiseks.