কম্পিউটার

পাইথনে রৈখিক সময়ে আকার 3 এর একটি সাজানো অনুক্রম খুঁজুন


ধরুন আমাদের কাছে N সংখ্যা সহ একটি অ্যারে আছে, আমাদের পরীক্ষা করতে হবে যে 3টি উপাদান যেমন b[i]

সুতরাং, যদি ইনপুটটি [13, 12, 11, 6, 7, 3, 31] এর মত হয়, তাহলে আউটপুট হবে [6,7,31]

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • n :=A এর আকার
  • সর্বোচ্চ :=n-1, সর্বনিম্ন :=0
  • ছোট :=1000 আকারের একটি অ্যারে, এবং 0 দিয়ে পূরণ করুন
  • ছোট[0] :=-1
  • 1 থেকে n রেঞ্জের জন্য,
      করুন
    • যদি A[i] <=A[মিনিমাম], তাহলে
      • সর্বনিম্ন :=i
      • ছোট[i] :=-1
    • অন্যথায়,
      • ছোট[i] :=সর্বনিম্ন
  • বৃহত্তর :=1000 আকারের একটি অ্যারে, এবং 0 দিয়ে পূরণ করুন
  • বৃহত্তর[n-1] :=-1
  • n-2 থেকে -1 রেঞ্জে
  • এর জন্য, 1 কমিয়ে,
      করুন
    • যদি A[i]>=A[সর্বোচ্চ], তাহলে
      • সর্বোচ্চ :=i
      • বৃহত্তর[i] :=-1
    • অন্যথায়,
      • বৃহত্তর[i] :=সর্বোচ্চ
  • আমি 0 থেকে n রেঞ্জের জন্য, কর
    • যদি ছোট[i] -1 এর মত না হয় এবং বড় [i] -1 এর মত না হয়, তাহলে
      • রিটার্ন A[ছোট[i]], A[i], A[বৃহত্তর[i]]
  • রিটার্ন "কিছুই না"

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

def find_inc_seq(A):n =len(A) সর্বোচ্চ =n-1 ন্যূনতম =0 ছোট =[0]*10000 ছোট[0] =-1 রেঞ্জে i এর জন্য(1, n):যদি (A) [i] <=A[মিনিমাম]):সর্বনিম্ন =i ছোট[i] =-1 অন্য:ছোট[i] =সর্বনিম্ন বৃহত্তর =[0]*10000 বৃহত্তর[n-1] =-1 পরিসীমার জন্য i n-2, -1, -1):যদি (A[i]>=A[সর্বোচ্চ]):সর্বোচ্চ =i বৃহত্তর[i] =-1 অন্য:বৃহত্তর[i] =সীমার মধ্যে i এর জন্য সর্বোচ্চ (0, n):যদি ছোট[i] !=-1 এবং বড় [i] !=-1:A[ছোট[i]], A[i], A[বৃহত্তর[i]] ফেরত দেয় "কিছুই না" arr =[ 13, 12, 11, 6, 7, 3, 31]মুদ্রণ(find_inc_seq(arr) )

ইনপুট

<প্রে>[13, 12, 11, 6, 7, 3, 31]

আউটপুট

(6, 7, 31)

  1. পাইথনে দীর্ঘতম সুষম অনুসৃতির দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম

  2. পাইথনে দীর্ঘতম ক্রমবর্ধমান অনুক্রম

  3. পাইথনে একটি তালিকার আকার খুঁজুন

  4. কিভাবে পাইথন ব্যবহার করে সময়ের পার্থক্য খুঁজে বের করবেন?