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

โปรแกรมค้นหาจำนวนที่น้อยที่สุดเป็นอันดับที่ n จากเมทริกซ์ที่กำหนดใน Python


สมมติว่าเรามีเมทริกซ์ 2 มิติ โดยที่แต่ละแถวและคอลัมน์เรียงตามลำดับที่ไม่ลดลง เราต้องหาจำนวนที่น้อยที่สุดที่ n

ดังนั้นหากอินพุตเป็นแบบ

2 4 30
3 4 31
6 6 32

และ n =4 ผลลัพธ์จะเป็น 6

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • lst :=รายการใหม่
  • สำหรับแต่ละแถว i ในเมทริกซ์ ทำ
    • สำหรับแต่ละเซลล์ j ใน i ทำ
      • ใส่ j ต่อท้าย lst
  • เรียงลำดับรายการก่อน
  • ส่งคืน lst[n]

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

ตัวอย่าง

class Solution:
   def solve(self, matrix, n):
      lst = []
      for i in matrix:
         for j in i:
            lst.append(j)
      lst.sort()
      return lst[n]
ob = Solution()
matrix = [ [2, 4, 30], [3, 4, 31], [6, 6, 32] ]
n = 4
print(ob.solve(matrix, n))

อินพุต

matrix = [
[2, 4, 30],
[3, 4, 31],
[6, 6, 32] ]
n = 4

ผลลัพธ์

6