الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال linked list

بدأه norhan ahmad في 22 يوليو 2011 · 9 رد · 1,111 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اريد كتابة برنامج dictionary باستخدام linked list تحتوي على عشر كلمات مع معانيها عندما ادخل له الكلمه يخرج لي معناها

اريد مساعده في كتابة البرنامج ولو بتوضيح كيفيه عمله

وشكرا

#2

ابدأي بطرح محاولتك وسوف اقوم بمساعدتك إن شاء الله

ولكن هل تعرفين كيف تقومين بعمل linked list اولا؟

الفكرة بسيطة سوف تتكون كل سلسلة من سترينغ يمثل الكلمة وسترينغ يمثل المعني و مؤشر للحلقة التالية

وتكتبين دالة بحث بحسب الكلمة تقوم مثلا باستدعاء الدالة strcmp() لمقارنة النص

No intellectual battle was ever won through retreat
You do not watch Gintama? Dude, you are missing a lot!


صورةmsrgb1485.gif ocajavase7programmerclr.gif

#3
mental-driller كتب:

ابدأي بطرح محاولتك وسوف اقوم بمساعدتك إن شاء الله

ولكن هل تعرفين كيف تقومين بعمل linked list اولا؟

الفكرة بسيطة سوف تتكون كل سلسلة من سترينغ يمثل الكلمة وسترينغ يمثل المعني و مؤشر للحلقة التالية

وتكتبين دالة بحث بحسب الكلمة تقوم مثلا باستدعاء الدالة strcmp() لمقارنة النص

#4

شكرا لك اخ mental-driller بس انا عندي سؤال هلا انا بنيت linked list بهذا الشكل

struct node{

string word;

string maining;

node link;

}

الان اريد بناء class لكن ما هي الدوال والمتغيرات التي يجب وضعها داخل ال class

#5

السلام عليكم و رحمة الله و بركاته اختي الكريمة,

معلش, سؤالك مكرر, استخدمي خاصية البحث من فضلك,

حتى لا حاجة بالبحث انه في الصفحة الاولي الان, تفضلي (هنا).

فقط يحتاج بتغيير صغير ليصبح dictionary كما تريدين.

السلام عليكم

..:: رَبِّ زِدْني عِلْمًا ::..

#6

شكرا للمساعده

#7

لقد قمت بكتابة هذا الكود لكن يوجد مشكله بفنكشن ال search حيث عندما ادخل له اول كلمه بالمصفوفه يخرج لي معناها لكن عندما ادخل له اي كلمه اخرى لا يخرج لي المعنى

الرجاء مساعدتي اين الخطأ

>

#include<iostream>

#include<string>

using namespace std;

struct node{

string word;

string meanning;

node *link;

};

node *head,*cur,*last,*newNode;

node *buildListForward()

{

string woard[]={"suit","loss","kind","office"};

string meanning[]={"aaa","bbb","ccc","vvvv"};

head=0;

last=0;

for(int i=0;i<4;i++)

{

newNode=new node;

newNode->word=woard;

newNode->meanning=meanning;

newNode->link=0;

if(head==0)

{

head=newNode;

last=newNode;

}

else

{

last->link=newNode;

last=newNode;

}

}

return head;

};

void search()

{

string w;

cout<<"enter the word"<<endl;

cin>>w;

cur=head;

while(cur->word==w)

{

cout<<cur->meanning<<endl;

cur=cur->link;

}

}

int main()

{

int d;

buildListForward();

search();

cin>>d;

}

<

#8

ما تريد ليس linked list و إنما map أنظر المثال التالي:

#include <iostream>
#include <string>
#include <map>
using namespace std;

int main()
{
    typedef map<string,int> my_map;
    typedef map<string,int>::iterator itr;
    typedef pair<string,int> kv;

    my_map values;

    values.insert(kv("ahmed", 100));
    values.insert(kv("muhammad", 200));
    values.insert(kv("samy", 300));
    values.insert(kv("amr", 400));

    for ( itr it = values.begin(); it != values.end(); it++ )
        cout << it->first << " => " << it->second << endl;
}

و الله ولي التوفيق

مدونتي: C++ Tips and Tricks

#9

شكرا لك لكن انا لا اعلم ما هي ال map كما ان المدرس طلب استخدام linked list

#10
norhan ahmad كتب:

لقد قمت بكتابة هذا الكود لكن يوجد مشكله بفنكشن ال search حيث عندما ادخل له اول كلمه بالمصفوفه يخرج لي معناها لكن عندما ادخل له اي كلمه اخرى لا يخرج لي المعنى

الرجاء مساعدتي اين الخطأ

مواضيع مشابهة