تور لحظه آخری
امروز : جمعه ، 14 دی 1403    احادیث و روایات:  امام رضا (ع):هیچ بنده ‏اى حقیقت ایمانش را کامل نمى ‏کند مگر این که در او سه خص...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

اجاره سند در شیراز

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

خرید بلیط هواپیما

بلیط اتوبوس پایانه

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

خرید از چین

خرید از چین

تجهیزات کافی شاپ

خرید سرور اچ پی ماهان شبکه

کاشت ابرو طبیعی و‌ سریع

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

دوره آموزش باریستا

مهاجرت به آلمان

بهترین قالیشویی تهران

بورس کارتریج پرینتر در تهران

تشریفات روناک

نوار اخطار زرد رنگ

ثبت شرکت فوری

تابلو برق

خودارزیابی چیست

فروشگاه مخازن پلی اتیلن

قیمت و خرید تخت برقی پزشکی

کلینیک زخم تهران

خرید بیت کوین

خرید شب یلدا

پرچم تشریفات با کیفیت بالا و قیمت ارزان

کاشت ابرو طبیعی

پرواز از نگاه دکتر ماکان آریا پارسا

پارتیشن شیشه ای اداری

اقامت یونان

خرید غذای گربه

رزرو هتل خارجی

تولید کننده تخت زیبایی

مشاوره تخصصی تولید محتوا

سی پی کالاف

دوره باریستا فنی حرفه ای

چاکرا

استند تسلیت

تور بالی نوروز 1404

سوالات لو رفته آیین نامه اصلی

کلینیک دندانپزشکی سعادت آباد

پی ال سی زیمنس

دکتر علی پرند فوق تخصص جراحی پلاستیک

تجهیزات و دستگاه های کلینیک زیبایی

 






آمار وبسایت

 تعداد کل بازدیدها : 1849284738




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

سوال در مورد ليست پيوندي درc++


واضح آرشیو وب فارسی:سایت ریسک: View Full Version : سوال در مورد ليست پيوندي درc++ nimja29-11-2008, 12:18 AMسلام من بايد 5-6 تا سوال و مسئله برنامه نويسي مربوط به ليست پيوندي رو حل كنم. اما اصلا نميدونم كه چطور بايد از ليست پيوندي در c++ استفاده كرد.اگه يه نفر بتونه يك مثال ساده برام بنويسه من ميتونم كه تمام مسائل رو حل كنم.چون مفهوم رو بلدم فقط پياده سازي اونو بلد نيستم. مثلا فقط يك برنامه بنويسيد كه ي 5 تا متغير رو بخونه و در ليست پيوندي ذخيره كنه و دوباره اون 5 تا رو در خروجي نشون بده. باز هم متشكرم nimja29-11-2008, 12:30 PMفقط خواهشا دوستان یکم سریعتر راهنماییم کنید. باید سوالها رو تا رو تا 3-4 روز دیگه تحویل بدم devil_ff200829-11-2008, 07:12 PMمن برنامه رو نوشتم فقط یه مشکل کوچیک داره حلش کنم چشم در خدمتم mahdi7s29-11-2008, 08:28 PMنمي دونم اين بدردت مي خوره يا نه؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! nimja29-11-2008, 09:11 PMنمي دونم اين بدردت مي خوره يا نه؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! خیلی متشکرم.بدون استفاده از کلاس ها نمیشه؟ این برنامه که شما نوشتید در خروجی آدرس لینک ها ی اعضا رو نشون میده؟ Mehran NZ29-11-2008, 09:20 PMمهدی جان این برنامت و که من دیدم اصلا هیچ ربطی به لیست پیوندی نداره که !!!خود برنامشم که اجرا کنی اول 5 تا عدد می گیره بعد یه سری اعداد نامفهوم بهت می ده :10: این لیست پیوندی سه تا تابع داره یکیش برای اضافه به اخر لیست یکی برای اضافه به اول لیست و اخری هم برای نمایش لیست هست !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! nimja30-11-2008, 08:34 AMممنونم تو خط پنجم این دستور چیکار میکنه؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! Mehran NZ30-11-2008, 11:53 AMممنونم تو خط پنجم این دستور چیکار میکنه؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! ببین همون طور که می دونی لیست پیوندی ساده یه نوع ساختمان داده هست که هر خونش از دو فیلد تشکیل شده یکیش شامل اطلاعات هست اون یکی هم شامل ادرس خونه بعدی که توی برنامه کلاس node رو براش تعریف کردم که دو تا خونه داره یکیش info اون یکی هم next خوب حالا توی کلاس لیست پیوندی که اصل کار با این هست هر خونه ای که توی حافظه درست می شه باید از نوع کلاس node باشه (که بتونه هر خونش دو تا فیلد داشته باشه) بخاطرهمین باید کلاس node رو دوست کلاس linkedList تعریف کنیم که اعضاش بتونن از نوع node تعریف بشن mahdi7s30-11-2008, 03:56 PMببخشيد ... اگه ميشه كمي در مورد ليست پيوندي توضيح بدين كه -> هر لسيت پيوندي از چه چيزهايي تشكيل شده؟ _ اصلا به چه دردي مي خوره؟ _ معمولا در چه جاهايي از ليست هاي پيوندي استفاده ميشه؟ و در نهايت يه كد خيلي ساده از يه ليست پيوندي بذاريد Mehran NZ30-11-2008, 05:12 PMببخشيد ... اگه ميشه كمي در مورد ليست پيوندي توضيح بدين كه -> هر لسيت پيوندي از چه چيزهايي تشكيل شده؟ _ اصلا به چه دردي مي خوره؟ _ معمولا در چه جاهايي از ليست هاي پيوندي استفاده ميشه؟ و در نهايت يه كد خيلي ساده از يه ليست پيوندي بذاريد خوب لیست پپیوندی یه نوع ساختمان داده هست یعنی یک چیزی هست که می شه داده ها رو در اون نگه داری کرد مثل ارایه ولی فرقش باارایه اینه که بصورت پویاهست یعنی از اول طولش مشخص نیست و هر بار که بخوای یک داده ای رو توش قرار بدی باید اول یه خونه براش درست کنی هر وقت هم که بخوای یک داده رو ازش پاک کنی باید اون خونه رو پاک کنی در این صورت حافظه بصورت بهینه استفاده می شه. البته لیست پیوندی خودش هم مشکلاتی داده مثلا جستجو که حتما باید بصورت خطی باشه بخاطر همین بحث استفاده از درختها پیش میاد ساده ترین نوعش هم لیست پیوندی یکطرفه ساده هست که کدش و بالا نوشتم این هم adt لیست پیوندی از کتاب جعفر نژاد: مجموعه ای از عناصر داده ها: مجموعه ای مرتب (دنباله ای متناهی) از عناصرداده ها است عملیات اصلی: ایجاد لیست تست خالی بودن لیست پیمایش لیست درج حذف nimja01-12-2008, 10:21 PMآقا متشکرم خیلی بدردم خورد.2 تا سوال ها رو تونستم حل کنم. فقط یه سوال: اگه بخواهیم 2 تا لیست پیوندی تعریف کنیم اون موقع باید چیکار کنیم؟چون یکی از سوال ها چک کردن برابری 2تا لیست پیوندیه. متشکرم Mehran NZ01-12-2008, 11:41 PMآقا متشکرم خیلی بدردم خورد.2 تا سوال ها رو تونستم حل کنم. فقط یه سوال: اگه بخواهیم 2 تا لیست پیوندی تعریف کنیم اون موقع باید چیکار کنیم؟چون یکی از سوال ها چک کردن برابری 2تا لیست پیوندیه. متشکرم خوشحالم که مشکلت حل شد در مورد سوالت کلاسش و که تعریف کردی حالا دو تا متغیر از نوع کلاسش تعریف کن مثلا توی بدنه اصلی برنامت بنویس LinkedList a,b; اینجوری دو تا لیست پیوندی داری یکی a و یکی هم b nimja02-12-2008, 05:21 PMخوشحالم که مشکلت حل شد در مورد سوالت کلاسش و که تعریف کردی حالا دو تا متغیر از نوع کلاسش تعریف کن مثلا توی بدنه اصلی برنامت بنویس linkedlist a,b; اینجوری دو تا لیست پیوندی داری یکی a و یکی هم b دستت درد نکنه. میشه تابعی برای چک کردن برابری این دولیست رو بنویسید؟ Mehran NZ02-12-2008, 07:33 PMببین نوشتن این جور برنامه ها یعنی نوشتن پروژه که خلاف قوانین هستش و باور بکن به ضرر خودته ولی این یکی و نوشتم البته کلاسش رو نه تابع - سعی کن حتما خودتم یه بار بدون اینکه برنامه من و نگاه کنی بنویسیش :10: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! nimja02-12-2008, 08:27 PMخیلی خیلی متشکرم. فقط این عبارت rootA=a.getRoot(); رو میشه یک توضیح مختصر بدهید؟ خودم فکر میکنم که به خاطر این باشه که آدرس اولین خونه (root) لیست پیوندی در متغیر قرار میده تا بعدا برای عمل مقایسه کردن از ابتدای لیست پیوندی شروع بکنه. درسته؟ Mehran NZ02-12-2008, 09:19 PMکاملا درسته http://www.getsmile.com/emoticons/smileys-91853/aiw/ok.gif و اگه دقت کنی برای بدست اوردن ریشه لیست پیوندی مجبور شدم که یه تابع جدیدیعنی getRoot رو برای لیست پیوندی تعریف کنم که متغیر root روبگیره درتابع isEqual هم می تونی tempA,tempB رو تعریف نکنی و مستقیما از rootA,rootB استفاده کنی ولی خوب اینجوری بنظرم درکش راحت تر هست بعد یه چیز مهم دیگه در اینجا هر دو تا لیست سه مقدار می گیرن اگه نمی دونی که اندازه های دو تا لیستت یکی هستند یا نه می تونی از لیست پیوندی دارای سر لیست استفاده کنی و در همون اول تابع ازش استفاده کنی که اگه تعداد خونه های دولیست با هم برابر نبودند return 0; روبر گردونی که یعنی دو لیست برابر نیستند که البته همون طور که می دونی اینجور لیست پیوندی یکم بیشتر برنامه نویسی می خواد این هم لیست پیوندی دارای سرلیست !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! nimja04-12-2008, 12:53 PMیکی از سوال ها این هست که لیست پیوندیه B رو به انتهای لیست A وصل کنه. من برنامه اونو این طور نوشتم. ولی موقعی که میخواهم لیست A رو نمایش بده دیگه لیست B رو نشون نمیده !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! فکرکنم اشکال از این قسمتش باشه: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! Mehran NZ04-12-2008, 01:57 PMبله اشکال از همون قسمت هست در ضمن این تابع رو دلیلی نداره بصورت int تعریف کنی چون قرار نیست چیزی رو برگردونه فقط دوتا لیست و پیوند می ده و تمام پس بهتره که void تعریف بشه ببین تو الان باید اول از ریشه a حرکت کنی تا برسی به اخرین خونش بعد در اخرین خونه فیلد next رو بجای NULL به اولین خونه (ریشه ) b پیوند بدی اینجوری b خود بخود به a پیوند می خوره من برنامت و درست کردم (به شرط پایان حلقه while یه دقت ویژه داشته باش) !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! برنامه ای که شما نوشتی تا اخر لیست و میره tempA رو نول می کنه بعد اون و برابر دومین خونه b می کنه (و دراخرین خونه a هم هیچ تغییری بوجودنمیاره) مثلا توی برنامه ی خودت من یه تکه کد کوچیک اضافه کردم که مقدار tempA رو در اخر نشون بده- اگه برای a مقادیر 1-2-3 و برای b مقادیر 4-5-6 وارد کنی می بینی که tempA برابر عدد 5 می شه !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! nimja22-12-2008, 09:42 AMبرای اینکه بخواهیم جای 2تا گره رو عوض کنیم بدون اینکه به info دست بزنیم.باید از 4 تا اشاره گر استفاده کرد؟ میشه یک روش کار رو توضیح دهید؟ ممنونم Mehran NZ22-12-2008, 05:45 PMخوب این هم کاری نداره شکلش و برات کشیدم بالایی باید به پایینی تبدیل بشه ببین کجاش گنگه توضیح بدم http://nzmehran.persiangig.ir/p30world/Untitled-1.jpg nimja22-12-2008, 07:06 PMتو کدنویسی هاش مشکل دارم!! یعنی باید لیست رو مرتب کنم. ولی فقط با عوض کردن لینک. اون کدهایی که مربوط به عوض کردن 2 تا لینک گره هست رو مشکل دارم. Mehran NZ22-12-2008, 11:45 PMفرض کن در پست قبلیم توی اون شکلی که کشیدم سطر اول به ترتیب A,B,C و سطر دوم D,E,F باشه میخوایم جای B و E رو عوض کنیم من کدش و اینجوری نوشتم !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! nimja23-12-2008, 09:08 AMممنونم . این کدهایی که شما نوشتید رو متوجه شدم. ولی نتونستم تو برنامه ای که نوشتم(شما زحمتشو کشیدید) استفاده کنم. این برنامه رو ببینید:(برای مرتب کردن لیست پیوندی بدون تغییر info) !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! به تابع sort نگاه کنید: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! نمیدونم بعدش چیکار کنم؟؟؟ Mehran NZ23-12-2008, 02:09 PMببینید چون لیست خطی هستش شمل نباید temp رو برابر خونه ای بکنید که می خواید مرتب بشه بلکه باید در یک خونه قبل از اون قرار بگیره مثلا یه چیزی مثل کد پایین ولی با اضافه کردن کد پایین هم برنامه درست کار نمی کنه اگه هنوز هم با این چیزی که گفتم نمی تونید برنامه رو درست کنید با همین روشی که مرتب سازی رو دارید باهاش انجام میدید یه نمونش رو که روی ارایه پیاده سازی شده و بدون باگ هم باشه (دقیقا به همینصورت باشه همراه while , ...... ) رو بهم بدید تا توی دیباگش کمکتون کنم !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! tdk50x17-09-2009, 10:05 PMا سلام دوستان من بک گراند مهندسی کامپیوتر و برنامه نویسی با C رو ندارم. به دلایلی مجبور شدم درس Operating Systems رو بگیرم. متاسفانه 40 درصد نمره اختصاص به پروژه هایی داره که باید با C بنویسم. اولین پروژه مربوط به لیست های پیوندی میشه ظاهراً که اینجا کپی می کنم. انتظار ندارم که پروژه را برام انجام بدید اما به دلیل اینکه هیچی نمی دونم خواهش می کنم به صورت قدم به قدم بگید که باید چی کار کنم. الان دارم در مورد لیست های پیوندی مطالعه می کنم. لطفاً هر کی می تونه کمک کنه. Project 1 description  For this homework, you will be constructing a linked list implementation in C using the templates provides above.  You may need to modify the data structure (or add new data structures) defined in list.h. However, you MAY NOT modify the function defined in list.h. You may need to complete the function bodies in list.c. You can add new functions into list.h.  Create a test program to generate, populate and manipulate S (S<M) linked list.  Test data in the format of an M x N matrix will be provided.  Toy example (10 x 11): 0 0 0 6 8 4 8 1 5 7 4 8 7 7 5 7 3 0 0 0 0 3 3 5 7 3 4 7 0 0 0 0 1 0 0 8 2 7 6 2 4 4 5 0 0 0 0 1 7 7 3 4 5 6 1 0 0 7 4 4 8 5 7 3 5 2 0 8 1 5 5 1 8 8 4 7 5 5 3 4 7 2 0 0 0 0 0 8 4 3 7 8 2 2 6 4 0 0 3 0 0 0 8 6 7 4 6 8 5 0 Project 1 Task  Task Breaking down 1. Read the data into memory using file operations. 2. For the first S rows, put every element from the same row of the matrix into a new linked list, so you will have S linked lists. 3. For every link list, implement the f function to calculate the walking distances and record this distances into a linked list d. 4. Repeat the same operations for the rest rows (M-S). 5. Plot the curve with matlab about the values of d. 6. A written report is required.  Due date: Sep. 28th, 2009. Project 1 (Intlist.h) #ifndef __intlist_h__ #define __intlist_h__ /* each entry in the list contains an int */ typedef struct intlist { int datum; struct intlist *next; } INTLIST; INTLIST *init_intlist( int n ); /* initializes the intlist with initial datum n */ int insert_intlist( INTLIST *lst, int n ); /* Inserts an int (n) into an intlist from the beginning*/ void list_append(INTLIST *list, void *datum); /* Inserts entry to the end of the list */ Void list_front(INTLIST *list); /*return the element at the front of the list, and remove it from the list*/ void list_map( INTLIST *list, void (*f)(void *) ); /*Applies a function to each element of the list */ void list_delete( INTLIST *list ); /* Deletes (and frees) all entries in the list */ #endif Project 1  Intlist.c #include <stdlib.h> #include “intlist.h” /* initializes the intlist with initial datum n */ INTLIST *init_intlist( int n ) { INTLIST *lst; lst = (INTLIST *)malloc(sizeof(INTLIST)); lst->datum = n; lst->next = NULL; return lst; } Project 1  myprogram.c #include <stdlib.h> #include “intlist.h” /* execution starts here */ int main() { INTLIST *lst; lst = init_intlist(1); insert_intlist( lst, 2 ); free( lst ); return 0; } Project 1  Makefile: putting everything together CC=gcc CFLAGS=-Wall -g LIBS=-lreadline -lm OBJS=intlist.o INCLUDES=common.h all: $(OBJS) $(CC) $(CFLAGS) $(OBJS) $(LIBS) -o myprogram .c.o: $*.h $(INCLUDES) $(CC) $(CFLAGS) -c $*.c clean: rm -f *.o myprogram سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 2630]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن