কম্পিউটার

প্রদত্ত এককভাবে লিঙ্কযুক্ত তালিকার শুরুতে একটি নোড সন্নিবেশ করতে C++ এ একটি প্রোগ্রাম লিখুন


একটি লিঙ্ক করা তালিকা হল একটি লিনিয়ার ডেটা স্ট্রাকচার যাতে একাধিক নোড থাকে যা একে অপরের সাথে সংযুক্ত থাকে। প্রতিটি নোড দুটি ফিল্ড ডেটা ফিল্ড এবং পরবর্তী নোডের ঠিকানা নিয়ে গঠিত।

ধরা যাক আমরা একটি এককভাবে লিঙ্কযুক্ত তালিকা দিয়েছি প্রদত্ত লিঙ্কযুক্ত তালিকার শুরুতে একটি নোড সন্নিবেশ করানো। উদাহরণস্বরূপ,

ইনপুট-1 − 1 → 2 → 3 → 4

প্রদত্ত লিঙ্কযুক্ত তালিকার মাথায় বা শুরুতে '5' সন্নিবেশ করান৷

আউটপুট − 5 → 1 → 2 → 3 → 4

ব্যাখ্যা − লিঙ্ক করা তালিকার শুরুতে নোড সন্নিবেশ করার পরে এটি লিঙ্কযুক্ত তালিকাটিকে 5 → 1 → 2 → 3 → 4 হিসাবে প্রিন্ট করবে৷

এই সমস্যা সমাধানের পদ্ধতি

প্রাথমিকভাবে, আমরা একটি লিঙ্কযুক্ত তালিকা দিয়েছি যা নোড নিয়ে গঠিত। প্রতিটি নোডে পরবর্তী নোডের ডেটা এবং ঠিকানা থাকে৷

যেহেতু আমরা ইতিমধ্যে একটি নোড তৈরি করেছি তাই আমরা একটি ফাংশন তৈরি করব যা একটি প্যারামিটার হিসাবে হেড নোডের ঠিকানা নেবে এবং লিঙ্কযুক্ত তালিকার শুরুতে যে ডেটা প্রবেশ করাতে হবে এবং শুরুতে ডেটা প্রবেশ করাতে হবে। এখন মাথাটিকে নতুন ঢোকানো নোডের দিকে নির্দেশ করুন৷

  • একটি ফাংশন insertAthead(node*&head, int data) হেড নোডের ঠিকানা এবং আমাদের যে ডেটা সন্নিবেশ করতে হবে তা নেয়।

  • একটি নতুন নোড তৈরি করুন এবং এতে ডেটা সন্নিবেশ করুন৷

  • নতুন তৈরি নোডে মাথা সরান৷

  • লিঙ্ক করা তালিকা প্রিন্ট করুন।

উদাহরণ

#include<iostream>
using namespace std;
class node{
   public:
      int data;
      node*next;
      node(int d);
      data=d;
      next= NULL;
   }
};
void insertAthead(node*&head, int data){
   node*n= new node(data);
   n->next= head;
   head= n;
}
void print(node*head){
   while(head!=NULL){
      cout<<head->data<<"->";
      head= head->next;
   }
}
int main(){
   node*head= NULL;
   insertAthead(head,5);
   insertAthead(head,2);
   insertAthead(head,8);
   insertAthead(head,3);
   print(head);
}

আউটপুট

উপরের কোডটি চালানোর ফলে আউটপুট তৈরি হবে,

3→ 8→ 2→ 5 →

লিঙ্ক করা তালিকার শুরুতে নোড 3, 8, 2, এবং 5 সন্নিবেশ করালে, এটি −3→ 8→ 2→ 5 → হিসাবে আউটপুট তৈরি করবে।


  1. লিঙ্ক করা তালিকায় প্রদত্ত নোডের পরে একটি নোড যোগ করার জন্য C# প্রোগ্রাম

  2. একটি প্রদত্ত একক লিঙ্কযুক্ত তালিকাকে একটি সার্কুলার তালিকায় রূপান্তর করতে পাইথন প্রোগ্রাম

  3. সার্কুলার লিঙ্কড লিস্টের শুরুতে একটি নতুন নোড সন্নিবেশ করার জন্য পাইথন প্রোগ্রাম

  4. ডাবল লিঙ্কড তালিকার শুরুতে একটি নতুন নোড সন্নিবেশ করার জন্য পাইথন প্রোগ্রাম