11
จัดอันดับรายการในอาร์เรย์โดยใช้ Python / NumPy โดยไม่ต้องเรียงลำดับอาร์เรย์สองครั้ง
ฉันมีอาร์เรย์ของตัวเลขและฉันต้องการสร้างอาร์เรย์อื่นที่แสดงถึงอันดับของแต่ละรายการในอาร์เรย์แรก ฉันใช้ Python และ NumPy ตัวอย่างเช่น: array = [4,2,7,1] ranks = [2,1,3,0] นี่เป็นวิธีที่ดีที่สุดที่ฉันคิดขึ้น: array = numpy.array([4,2,7,1]) temp = array.argsort() ranks = numpy.arange(len(array))[temp.argsort()] มีวิธีใดที่ดีกว่า / เร็วกว่าที่หลีกเลี่ยงการเรียงอาร์เรย์สองครั้ง