একটি তালিকা দেওয়া হলে, আমাদের এর উপাদানগুলির ক্রম পরীক্ষা করতে হতে পারে। এই নিবন্ধে আমরা খুঁজে বের করব যে তালিকায় উপস্থিত উপাদানগুলি কঠোরভাবে ক্রমবর্ধমান ক্রমে রয়েছে কিনা। নীচের প্রোগ্রামগুলি সেই উদ্দেশ্য অর্জন করে৷
সব এবং জিপ সহ
এই পদ্ধতিতে আমরা প্রথমে প্রতিটি উপাদানকে টুকরো টুকরো করে কেটে নেওয়া পরবর্তী উপাদানের সাথে তার মান তুলনা করি। যদি এই ধরনের সমস্ত তুলনা সত্য হয় তবে আমরা উপসংহারে পৌঁছেছি যে তালিকাটি কঠোরভাবে ক্রমবর্ধমান ক্রমে রয়েছে৷
উদাহরণ
listA = [11,23,42,51,67]
#Given list
print("Given list : ",listA)
# Apply all and range
if (all(i < j for i, j in zip(listA, listA[1:]))):
print("Yes, List is sorted.")
else:
print("No, List is not sorted.")
# Checking again
listB = [11,23,21,51,67]
print("Given list : ",listB)
# Apply all and range
if (all(i < j for i, j in zip(listB, listB[1:]))):
print("Yes, List is sorted.")
else:
print("No, List is not sorted.") আউটপুট
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -
Given list : [11, 23, 42, 51, 67] Yes, List is sorted. Given list : [11, 23, 21, 51, 67] No, List is not sorted.
itertools.starmap সহ
একটি পুনরাবৃত্তিকারী তৈরি করে যা পুনরাবৃত্তিযোগ্য থেকে প্রাপ্ত আর্গুমেন্ট ব্যবহার করে ফাংশন গণনা করে। আমরা উপাদানগুলির তালিকাকে জিপ করি তাদের একের পর এক টুকরো টুকরো করে এবং তারপরে অপারেটরের কমের চেয়ে সমান। অনুগ্রহ করে মনে রাখবেন আমরা নিচের উদাহরণে সংখ্যার পরিবর্তে স্ট্রিং ব্যবহার করেছি।
উদাহরণ
import operator
import itertools
listA = ['Mon','Tue','Sun']
#Given list
print("Given list : ",listA)
# Apply all and range
if all(itertools.starmap(operator.le,
zip(listA, listA[1:]))):
print("Yes, List is sorted.")
else:
print("No, List is not sorted.")
# Checking again
listB = ['Mon','Sun','Tue']
print("Given list : ",listB)
# Apply all and range
if all(itertools.starmap(operator.le,
zip(listB, listB[1:]))):
print("Yes, List is sorted.")
else:
print("No, List is not sorted.") আউটপুট
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -
Given list : ['Mon', 'Tue', 'Sun'] No, List is not sorted. Given list : ['Mon', 'Sun', 'Tue'] Yes, List is sorted.