एक सेट हे अद्वितीय घटकांचा एक अक्रमित संग्रह आहे. यांची मुख्य शक्ती म्हणजे "X इथे आहे का?" हा प्रश्न सरासरी O(1) मध्ये उत्तर देणे, आणि ते स्वयंचलितपणे डुप्लिकेटला नकार देते.
उदाहरण
python
seen = set()
seen.add('a')
seen.add('a') # ignored — already present
print(len(seen)) # 1
'a' in seen # O(1) average membership test
# Set algebra
a = {1, 2, 3}
b = {2, 3, 4}
a & b # intersection -> {2, 3}
a | b # union -> {1, 2, 3, 4}
a - b # difference -> {1}
बहुतेक सेट्स hash sets (केवळ कीज संग्रहित करणारी hash table) म्हणून लागू केले जातात, म्हणून:
| ऑपरेशन | सरासरी |
|---|---|
| add | O(1) |
| remove | O(1) |
membership (in) | O(1) |
सामान्य वापर
- डीडुप्लिकेशन — एका पंक्तीमध्ये यादीतून पुनरावृत्ती काढा.
- वेगवान membership — "मी हे आधी पाहिले आहे का?"
- संबंध — गटांमधील intersection/union/difference.
महत्त्व का आहे
सेट्स "विशिष्टता" आणि "membership" सामान्य आणि वेगवान बनवतात, यादीवरील मंद नेस्टेड लूप्सची जागा घेतात.
सामान्य मुलाखत युक्ती — डुप्लिकेट किंवा भेट केलेल्या नोड्स शोधणे — काही सेट ऑपरेशन्सवर संकुचित होते.
