สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums เราต้องลบตัวเลขที่ปรากฏหลายครั้งในรายการ เรายังต้องรักษาลำดับของลักษณะที่ปรากฏในรายการเดิมด้วย
ดังนั้น หากอินพุตเป็น nums =[2, 4, 6, 1, 4, 6, 9] ผลลัพธ์จะเป็น [2, 1, 9] เนื่องจากองค์ประกอบเหล่านี้ปรากฏเพียงครั้งเดียว
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- dict :=แผนที่ใหม่
- สำหรับแต่ละ i ใน nums ทำ
- ถ้าฉันไม่ได้อยู่ใน dict แล้ว
- dict[i] :=0
- dict[i] :=dict[i] + 1
- ถ้าฉันไม่ได้อยู่ใน dict แล้ว
- ส่งคืนรายการที่มีองค์ประกอบทั้งหมด e เป็น nums โดยที่ dict[e] คือ 1
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
class Solution:
def solve(self, nums):
dict = {}
for i in nums:
if i not in dict:
dict[i] = 0
dict[i] = dict[i] + 1
return [k for k, v in dict.items() if v == 1]
ob = Solution()
nums = [2, 4, 6, 1, 4, 6, 9] print(ob.solve(nums)) อินพุต
[2, 4, 6, 1, 4, 6, 9]
ผลลัพธ์
[2, 1, 9]