কম্পিউটার

C++ এ একটি অনির্দেশিত গ্রাফে প্রান্তের সংখ্যা গণনা করুন


প্রদত্ত টাস্ক হল একটি অনির্দেশিত গ্রাফে প্রান্তের সংখ্যা গণনা করা৷ একটি অনির্দেশিত গ্রাফ হল শীর্ষবিন্দুগুলির একটি সেট যা একসাথে সংযুক্ত করে একটি গ্রাফ তৈরি করে, যার সমস্ত প্রান্ত দ্বিমুখী। অনির্দেশিত গ্রাফগুলি এক নোড থেকে অন্য সংযুক্ত নোডে যেকোন দিকে ভ্রমণ করতে পারে৷

নীচে অনির্দেশিত গ্রাফের একটি চাক্ষুষ উপস্থাপনা।

C++ এ একটি অনির্দেশিত গ্রাফে প্রান্তের সংখ্যা গণনা করুন

এখন, সমস্যা অনুযায়ী আমাদের অনির্দেশিত গ্রাফে প্রান্তের সংখ্যা খুঁজে বের করতে হবে।

একটি গ্রাফের প্রান্তগুলি হল সেই লাইনগুলি যেখানে দুটি শীর্ষবিন্দু যুক্ত হয়েছে৷

ইনপুট

 সন্নিবেশ (গ্রাফ_লিস্ট, 0, 1); সন্নিবেশ (গ্রাফ_লিস্ট, 0, 2); সন্নিবেশ (গ্রাফ_লিস্ট, 1, 2); সন্নিবেশ (গ্রাফ_লিস্ট, 1, 4); সন্নিবেশ (গ্রাফ_লিস্ট, 2, 4); সন্নিবেশ( গ্রাফ_লিস্ট, 2, 3); সন্নিবেশ করান(গ্রাফ_লিস্ট, 3, 4);

আউটপুট

প্রান্তের সংখ্যা হল:7

পন্থা আমরা উপরের সমস্যাটি সমাধান করার জন্য বেছে নেব -

  • গ্রাফের তালিকার সমস্ত শীর্ষবিন্দু সংরক্ষণ করতে একটি তালিকা শুরু করুন এবং সেই অনুযায়ী মান সন্নিবেশ করুন।

  • কাউন্ট_এজ ফাংশনে, একটি ভেরিয়েবল কাউন্ট=0 ঘোষণা করুন যা প্রান্তের গণনা ফেরত দেয়।

  • একটি লুপ ব্যবহার করে তালিকাটি অতিক্রম করুন যতক্ষণ না আমরা শেষ শীর্ষে পৌঁছাই এবং graph_list[i].size() এর সাথে গণনার মান যোগ করি এবং কাউন্ট ভেরিয়েবলে আবার সংরক্ষণ করি।

  • আমরা শেষ শীর্ষে পৌঁছানোর পরে, গণনার মানকে দুই দ্বারা ভাগ করুন এবং ফলাফলটি মুদ্রণ করুন।

উদাহরণ

verticesvoid insert(list graph_list[], int u, int v){ graph_list[u].push_back(v); graph_list[v].push_back(u);}//এজভয়েড কাউন্ট_এজেসের মোট সংখ্যা গণনা করতে ফাংশন(তালিকা গ্রাফ_লিস্ট[], int v){ int count=0; (int i =0; i গ্রাফ_লিস্ট //কল ইনসার্ট ফাংশন লিস্ট ভেরিয়েবল, ভার্টিস, লিঙ্কড ভার্টিস ইনসার্ট (গ্রাফ_লিস্ট, 0, 1); সন্নিবেশ (গ্রাফ_লিস্ট, 0, 2); সন্নিবেশ (গ্রাফ_লিস্ট, 1, 2); সন্নিবেশ (গ্রাফ_লিস্ট, 1, 4); সন্নিবেশ (গ্রাফ_লিস্ট, 2, 4); সন্নিবেশ (গ্রাফ_লিস্ট, 2, 3); সন্নিবেশ (গ্রাফ_লিস্ট, 3, 4); //কলিং কাউন্ট ফাংশন যা প্রান্ত গণনা করবে কাউন্ট_এজ (গ্রাফ_লিস্ট, শীর্ষবিন্দু); রিটার্ন 0;}

আউটপুট

আমরা উপরের কোডটি চালালে আমরা নিম্নলিখিত আউটপুট পাব −

প্রান্তের সংখ্যা হল:7

  1. একটি সংখ্যা n এর ওজন বিভাজনের সংখ্যা গণনা করতে C++ কোড

  2. অপঠিত অধ্যায়ের সংখ্যা গণনা করতে C++ কোড

  3. একটি প্রদত্ত গ্রাফে সেতুর প্রান্তের সংখ্যা খুঁজে বের করার জন্য C++ প্রোগ্রাম

  4. C++ এ একটি আয়তক্ষেত্রে বর্গক্ষেত্রের সংখ্যা গণনা করুন