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

นับจำนวนลบในเมทริกซ์ที่จัดเรียงแบบ Column-Wise และ Row-Wise โดยใช้ Python หรือไม่


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

อาร์เรย์เรียงแถวและแถวเรียงตามคอลัมน์หมายความว่าแต่ละค่าที่ดัชนีใด ๆ มีค่าน้อยหรือเท่ากับค่าที่ดัชนีในคอลัมน์ถัดไปและแถวถัดไป

ตัวอย่างในเมทริกซ์ด้านล่าง M

M = [[-40, -12, 1, 5],
[-20, -2, 5, 15],
[-22, -1, 13, 18],
[-12, 0, 15, 38]]

ในเมทริกซ์ M ด้านบน คอลัมน์แรกของแถวแรกคือ -40 ซึ่งน้อยกว่าค่าที่ค่าคอลัมน์ถัดไปในแถวเดียวกัน เช่น -12 และยังน้อยกว่าค่าในแถวถัดไปในคอลัมน์เดียวกัน เช่น -20 เป็นต้น บน.

ตัวอย่างที่ 2

# The matrix must be sorted in ascending order. If not, the algorithm will not work properly
matrix = [
   [-40, -12, 1, 5],
   [-20, -2, 5, 15],
   [-22, -1, 13, 18],
   [-12, 0, 15, 38]]
# To obtain the number of row
rowCount = len(matrix)
columnCount = 0

# To obtain the number of column
for i in matrix[0]:
   columnCount += 1
   a = 0
   b = 0
   count_Of_Negative_Integer = 0
while a < rowCount and b < columnCount:
   if matrix[a][b] >= 0:
      a += 1
      b = 0
   else:
      count_Of_Negative_Integer += 1
   b += 1
print("Count of Negative Integers in sorted Matrix is: ",count_Of_Negative_Integer)

ผลลัพธ์

Count of Negative Integers in sorted Matrix is: 7

ในโปรแกรมข้างต้น

  • >=0:อันดับแรก เราพยายามหาการนับจำนวนเต็มลบ น้อยกว่า 0

  • เนื่องจากในโปรแกรมข้างต้น เรากำลังพยายามหาจำนวนเต็มลบ อย่างไรก็ตาม โปรแกรมเดียวกันสามารถใช้เพื่อค้นหาจำนวนเต็มที่น้อยกว่าจำนวนเต็มเฉพาะใดๆ (n) เช่น การหาจำนวนเต็มที่น้อยกว่าหรือเท่ากับ 5 โดยใช้>5