Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

ความแตกต่างระหว่าง SortedList และ SortedDictionary ใน C #


ทั้ง SortedList และ SortedDictionary ใน C # เป็นประเภทของโครงสร้างข้อมูลที่ใช้สำหรับการจัดเก็บข้อมูล ตอนนี้บนพื้นฐานของลักษณะและธรรมชาติ เราสามารถแยกความแตกต่างระหว่างทั้งสองได้

ต่อไปนี้เป็นข้อแตกต่างที่สำคัญระหว่าง SortedList และ SortedDictionary

ซีเนียร์ เลขที่ คีย์ SortedList SortedDictionary
1 การจัดระเบียบหน่วยความจำ SortedList ต้องการหน่วยความจำเหลือน้อยสำหรับการจัดเก็บ ดังนั้นสถานะหน่วยความจำในกรณีจึงโอเวอร์เฮด ในทางกลับกัน SortedDictionary ต้องการหน่วยความจำเพิ่มเติมสำหรับการจัดเก็บ ดังนั้นสถานะหน่วยความจำในกรณีจึงไม่เป็นปัญหาคอขวด
2 ออกแบบ SortedList ถูกใช้งานภายในเช่นเดียวกับใน sortedList องค์ประกอบจะถูกเก็บไว้ในบล็อกต่อเนื่องในหน่วยความจำ ในอีกทางหนึ่งใน SortedDictionary องค์ประกอบจะถูกเก็บไว้ในวัตถุแยกต่างหากที่สามารถกระจายไปทั่วฮีปได้
3 การแบ่งส่วน SortedList ต้องการหน่วยความจำเหลือน้อยในการจัดเก็บ ดังนั้นหน่วยความจำจึงมีการกระจายตัวสูง ในทางกลับกันเนื่องจากการแตกแฟรกเมนต์การใช้หน่วยความจำมากขึ้นในกรณีที่ SortedDictionary เหลือน้อย
4 การเข้าถึง ในองค์ประกอบ SortedList สามารถเข้าถึงได้โดยใช้ดัชนี ผู้ใช้สามารถส่งผ่านดัชนีที่ต้องการและสามารถรับค่าขององค์ประกอบที่เก็บไว้ที่ดัชนีนั้นในรายการ ในทางกลับกัน ผู้ใช้สามารถเข้าถึงองค์ประกอบโดยใช้ดัชนีหรือคีย์ ในกรณีนี้ การเข้าถึงด้วยคีย์ก็เพียงพอแล้ว ไม่จำเป็นต้องใช้องค์ประกอบในการเข้าถึงโดยใช้ดัชนี
5 การเรียงลำดับ ใน SortedList ตามชื่อที่แนะนำองค์ประกอบจะถูกจัดเก็บไว้ในรูปแบบที่เรียงลำดับ อย่างไรก็ตาม ข้อมูล SortedDictionary จะถูกจัดเก็บในรูปแบบที่ไม่ได้เรียงลำดับ