คำถามติดแท็ก sorting

การเรียงลำดับเป็นกระบวนการของการใช้คำสั่งบางอย่างกับการรวบรวมรายการ

30
ฉันจะจับคู่ถุงเท้าจากกองได้อย่างมีประสิทธิภาพได้อย่างไร
เมื่อวานฉันจับคู่ถุงเท้าจากผ้าที่สะอาดและคิดวิธีที่ฉันทำมันไม่มีประสิทธิภาพมาก ฉันทำการค้นหาที่ไร้เดียงสา - เลือกถุงเท้าหนึ่งอันและ "วนซ้ำ" กองเพื่อหาคู่ เรื่องนี้ต้องมีการทำซ้ำมากกว่า n / 2 * n / 4 n = 2 /8 ถุงเท้าโดยเฉลี่ย ในฐานะนักวิทยาศาสตร์คอมพิวเตอร์ฉันคิดว่าฉันจะทำอะไรได้บ้าง แน่นอนว่าการคัดแยก (ตามขนาด / สี / ... ) เป็นสิ่งสำคัญที่จะทำให้ได้โซลูชั่น O (NlogN) การแฮ็กหรือโซลูชันอื่น ๆ ที่ไม่ใช่สถานที่ไม่ใช่ตัวเลือกเพราะฉันไม่สามารถทำซ้ำถุงเท้าของฉันได้ (แม้ว่ามันอาจจะดีถ้าฉันทำได้) ดังนั้นคำถามคือโดยทั่วไป: ด้วยnถุงเท้าคู่หนึ่งที่ประกอบด้วย2nองค์ประกอบ (สมมติว่าถุงเท้าแต่ละคู่มีคู่ที่ตรงกันหนึ่งคู่) วิธีที่ดีที่สุดในการจับคู่พวกเขาให้มีประสิทธิภาพคืออะไรกับพื้นที่พิเศษลอการิทึมมากที่สุด? (ฉันเชื่อว่าฉันสามารถจำจำนวนข้อมูลนั้นได้หากจำเป็น) ฉันจะขอบคุณคำตอบที่กล่าวถึงประเด็นต่อไปนี้: วิธีแก้ปัญหาเชิงทฤษฎีทั่วไปสำหรับถุงเท้าจำนวนมาก จำนวนถุงเท้าที่แท้จริงนั้นไม่ใหญ่มากฉันไม่เชื่อคู่สมรสของฉันและฉันมีมากกว่า 30 คู่ (และมันค่อนข้างง่ายที่จะแยกแยะความแตกต่างระหว่างถุงเท้าของฉันและเธอ; สิ่งนี้สามารถใช้ได้เช่นกัน?) มันเทียบเท่ากับปัญหาความแตกต่างขององค์ประกอบหรือไม่

30
ฉันจะเรียงลำดับพจนานุกรมตามค่าได้อย่างไร
คำตอบของคำถามนี้เป็นความพยายามของชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันมีพจนานุกรมของค่าที่อ่านจากสองฟิลด์ในฐานข้อมูล: ฟิลด์สตริงและฟิลด์ตัวเลข เขตข้อมูลสตริงไม่ซ้ำกันดังนั้นจึงเป็นกุญแจสำคัญของพจนานุกรม ฉันสามารถเรียงลำดับคีย์ได้ แต่ฉันจะเรียงลำดับตามค่าได้อย่างไร หมายเหตุ: ฉันได้อ่านคำถาม Stack Overflow ที่นี่ฉันจะเรียงลำดับรายการพจนานุกรมตามค่าของพจนานุกรมได้อย่างไร และอาจเปลี่ยนรหัสของฉันให้มีรายการพจนานุกรม แต่เนื่องจากฉันไม่ต้องการรายการพจนานุกรมฉันต้องการทราบว่ามีวิธีที่ง่ายกว่าในการเรียงลำดับจากมากไปหาน้อยหรือจากมากไปหาน้อย

30
เรียงลำดับอาร์เรย์ของวัตถุตามค่าคุณสมบัติสตริง
ฉันมีอาร์เรย์ของวัตถุ JavaScript: var objs = [ { first_nom: 'Lazslo', last_nom: 'Jamf' }, { first_nom: 'Pig', last_nom: 'Bodine' }, { first_nom: 'Pirate', last_nom: 'Prentice' } ]; ฉันจะเรียงลำดับตามค่าlast_nomใน JavaScript ได้อย่างไร? ฉันรู้sort(a,b)แต่ดูเหมือนว่าจะใช้กับสตริงและตัวเลขเท่านั้น ฉันจำเป็นต้องเพิ่มtoString()วิธีการในวัตถุของฉันหรือไม่?

18
ฉันจะเรียงลำดับรายการพจนานุกรมตามค่าของพจนานุกรมได้อย่างไร
ฉันมีรายการพจนานุกรมและต้องการให้แต่ละรายการเรียงลำดับตามค่าคุณสมบัติเฉพาะ คำนึงถึงอาร์เรย์ด้านล่าง [{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}] เมื่อเรียงตามnameควรเป็น [{'name':'Bart', 'age':10}, {'name':'Homer', 'age':39}]

30
จัดเรียงแผนที่ <คีย์ค่า> ตามค่า
ฉันค่อนข้างใหม่กับ Java และมักพบว่าฉันต้องเรียงลำดับMap&lt;Key, Value&gt;ค่า เนื่องจากค่านั้นไม่ซ้ำกันฉันจึงพบว่าฉันแปลงค่าkeySetเป็นarrayและเรียงลำดับอาร์เรย์นั้นผ่านการจัดเรียงอาร์เรย์ด้วยตัวเปรียบเทียบแบบกำหนดเองที่เรียงลำดับตามค่าที่เกี่ยวข้องกับคีย์ มีวิธีที่ง่ายกว่านี้ไหม?

30
เรียงลำดับอาร์เรย์ของวัตถุตามค่าคุณสมบัติ
ฉันมีวัตถุต่อไปนี้โดยใช้ AJAX และเก็บไว้ในอาร์เรย์: var homes = [ { "h_id": "3", "city": "Dallas", "state": "TX", "zip": "75201", "price": "162500" }, { "h_id": "4", "city": "Bevery Hills", "state": "CA", "zip": "90210", "price": "319250" }, { "h_id": "5", "city": "New York", "state": "NY", "zip": "00010", "price": "962500" } ]; ฉันจะสร้างฟังก์ชั่นเพื่อเรียงลำดับวัตถุตามpriceคุณสมบัติในลำดับจากน้อยไปมาก หรือ มากไปหาน้อยโดยใช้ JavaScript …

19
วิธีจัดเรียงดาต้าเฟรมโดยใช้หลายคอลัมน์
ฉันต้องการเรียงลำดับ data.frame โดยหลายคอลัมน์ ตัวอย่างเช่น data.frame ด้านล่างนี้ฉันต้องการจัดเรียงตามคอลัมน์z(จากมากไปน้อย) จากนั้นตามด้วยคอลัมน์b(จากน้อยไปมาก): dd &lt;- data.frame(b = factor(c("Hi", "Med", "Hi", "Low"), levels = c("Low", "Med", "Hi"), ordered = TRUE), x = c("A", "D", "A", "C"), y = c(8, 3, 9, 9), z = c(1, 1, 1, 2)) dd b x y z 1 Hi A 8 …
1316 r  sorting  dataframe  r-faq 

27
ฉันจะเรียงลำดับ NSMutableArray ด้วยวัตถุที่กำหนดเองได้อย่างไร
สิ่งที่ฉันต้องการจะทำนั้นค่อนข้างง่าย แต่ฉันไม่สามารถหาคำตอบในเว็บได้ ฉันมีNSMutableArrayสิ่งของและสมมุติว่ามันเป็นวัตถุ 'บุคคล' ฉันต้องการที่จะเรียงลำดับNSMutableArrayโดย Person.birthDate NSDateซึ่งเป็น ฉันคิดว่ามันเกี่ยวข้องกับวิธีการนี้: NSArray *sortedArray = [drinkDetails sortedArrayUsingSelector:@selector(???)]; ใน Java ฉันจะทำให้วัตถุของฉันใช้ Comparable หรือใช้ Collections.sort กับเครื่องมือเปรียบเทียบแบบกำหนดเองแบบอินไลน์ ... คุณทำเช่นนี้ใน Objective-C อย่างไร

20
วิธีการเรียงลำดับรายการ <T> ตามคุณสมบัติในวัตถุ
ฉันได้เรียนที่เรียกว่าOrderซึ่งมีคุณสมบัติเช่นOrderId, OrderDate, และQuantity Totalฉันมีรายชื่อของOrderชั้นนี้: List&lt;Order&gt; objListOrder = new List&lt;Order&gt;(); GetOrderList(objListOrder); // fill list of orders ตอนนี้ฉันต้องการเรียงลำดับรายการตามคุณสมบัติหนึ่งของOrderวัตถุเช่นฉันต้องการเรียงลำดับตามวันที่สั่งซื้อหรือรหัสสั่งซื้อ ฉันจะทำสิ่งนี้ใน C # ได้อย่างไร
1248 c#  generics  list  sorting 

28
เรียงลำดับ ArrayList ของวัตถุที่กำหนดเองตามคุณสมบัติ
ฉันอ่านเกี่ยวกับการเรียงลำดับ ArrayLists โดยใช้ Comparator แต่ในตัวอย่างทั้งหมดที่ผู้คนใช้compareToซึ่งอ้างอิงจากการวิจัยบางอย่างเป็นวิธีสำหรับสตริง ฉันต้องการเรียงลำดับ ArrayList ของวัตถุที่กำหนดเองโดยหนึ่งในคุณสมบัติของพวกเขา: วัตถุวันที่ ( getStartDay()) โดยปกติแล้วฉันจะเปรียบเทียบพวกเขาด้วยitem1.getStartDate().before(item2.getStartDate())ดังนั้นฉันจึงสงสัยว่าฉันจะเขียนสิ่งที่ชอบได้ไหม: public class CustomComparator { public boolean compare(Object object1, Object object2) { return object1.getStartDate().before(object2.getStartDate()); } } public class RandomName { ... Collections.sort(Database.arrayList, new CustomComparator); ... }
1145 java  sorting  date  comparator 

11
วิธีการเรียงลำดับอาร์เรย์หลายมิติตามค่า
ฉันจะจัดเรียงแถวลำดับนี้ตามค่าของคีย์ "คำสั่ง" ได้อย่างไร แม้ว่าค่าจะเรียงตามลำดับ แต่ก็ไม่ได้เป็นเช่นนั้นเสมอไป Array ( [0] =&gt; Array ( [hashtag] =&gt; a7e87329b5eab8578f4f1098a152d6f4 [title] =&gt; Flower [order] =&gt; 3 ) [1] =&gt; Array ( [hashtag] =&gt; b24ce0cd392a5b0b8dedc66c25213594 [title] =&gt; Free [order] =&gt; 2 ) [2] =&gt; Array ( [hashtag] =&gt; e7d31fc0602fb2ede144d18cdffd816b [title] =&gt; Ready [order] =&gt; 1 ) )

27
ฉันจะเรียงลำดับพจนานุกรมตามคีย์ได้อย่างไร
สิ่งที่จะเป็นวิธีที่ดีที่จะไปจาก{2:3, 1:89, 4:5, 3:0}ไป{1:89, 2:3, 3:0, 4:5}? ฉันตรวจสอบบางโพสต์ แต่พวกเขาทั้งหมดใช้ตัวดำเนินการ "เรียงลำดับ" ที่ส่งคืนทูเปิล

9
Swift Beta performance: การเรียงลำดับอาร์เรย์
ฉันใช้อัลกอริทึมใน Swift Beta และสังเกตว่าประสิทธิภาพแย่มาก หลังจากขุดลึกฉันรู้ว่าหนึ่งในคอขวดเป็นสิ่งที่ง่ายเหมือนการเรียงลำดับอาร์เรย์ ส่วนที่เกี่ยวข้องอยู่ที่นี่: let n = 1000000 var x = [Int](repeating: 0, count: n) for i in 0..&lt;n { x[i] = random() } // start clock here let y = sort(x) // stop clock here ใน C ++ การดำเนินการที่คล้ายกันใช้เวลา0.06 วินาทีบนคอมพิวเตอร์ของฉัน ใน Python ใช้เวลา0.6 วินาที (ไม่มีลูกเล่นเพียงแค่ y = …

24
วิธีการเรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้อง
พยายามรับค่าสูงสุดและต่ำสุดจากอาร์เรย์ที่ฉันรู้ว่าจะมีจำนวนเต็มเท่านั้นดูเหมือนว่าจะยากกว่าที่ฉันคิด var numArray = [140000, 104, 99]; numArray = numArray.sort(); alert(numArray) เรียกใช้ข้อมูลโค้ดซ่อนผลลัพธ์ขยายตัวอย่างข้อมูล ฉันคาดหวังว่าสิ่งนี้จะแสดง 99, 104, 140000ฉันคาดหวังนี้เพื่อแสดง104, 140000, 99แต่มันแสดงให้เห็นว่า ดังนั้นดูเหมือนว่าการเรียงลำดับจะจัดการค่าเป็นสตริง มีวิธีการรับฟังก์ชั่นการเรียงลำดับจริงตามมูลค่าจำนวนเต็ม?

8
วิธีการจัดเรียงรายการวัตถุตามคุณลักษณะของวัตถุ?
ฉันมีรายการของวัตถุ Python ที่ฉันต้องการเรียงลำดับตามคุณสมบัติของวัตถุนั้น ๆ รายการดูเหมือนว่า: &gt;&gt;&gt; ut [&lt;Tag: 128&gt;, &lt;Tag: 2008&gt;, &lt;Tag: &lt;&gt;, &lt;Tag: actionscript&gt;, &lt;Tag: addresses&gt;, &lt;Tag: aes&gt;, &lt;Tag: ajax&gt; ...] แต่ละวัตถุมีจำนวน: &gt;&gt;&gt; ut[1].count 1L ฉันต้องการเรียงลำดับรายการตามจำนวนการนับจากมากไปน้อย ฉันได้เห็นวิธีการหลายอย่างนี้แล้ว แต่ฉันกำลังมองหาแนวปฏิบัติที่ดีที่สุดใน Python
804 python  list  sorting  oop  count 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.