PDA

View Full Version : سوال: در مورد ساختمان داده



majidrezaei2007
جمعه 13 دی 1387, 01:58 صبح
سلام دوستان عزیز . خسته نباشید . میرم سر اصل مطلب . استاد درس ساختمان داده ما 26 تا برنامه به ما داده که اونارو بهش تحویل بدیم . من 22 تا رو بهش به راحتی تحویل دادم ولی 4 تا دیگه واقعا برنامه های سختیه . البته دوتا (2 و 3) از اون 4 تا رو هم تا حدی نوشتم ولی خوب ... حالا واستون شرح برنامه ها رو میگم . فقط یه الگوریتم به زبان فارسی خودمون هم باشه کافیه و حالا اگه نمونه برنامه بود که چه بهتر .1- ما یک درخت دودویی داریم و یه اشاره گر به ریشه اون (همونطوری که میدونین درخت دودویی یک درخت نیمه کامل است) و می خواهیم این درخت رو به روش سطحی پیمایش کنیم یا به عبارتی به صورت سطحی ازش گزارش بگیریم . یعنی ابتدا که ریشه ! بعد فرزندهای ریشه . بعد فرزندهای اونا و ... -- امیدوارم منظورم رو از سطحی متوجه شده باشید . من هر کاری کردم چون درخت کامل نیست نشد.2- ما یک لیست پیوندی داریم که داده ها بهش اضافه شدن و به صورت به هم ریخته هستند . حالا می خواهیم این لیست رو مرتب کنیم اما نه باجابه جایی داده ها بلکه با جابجایی اشاره گرها . چون ممکنه که قسمت داده نودهای لیست پیوندی ما خود از چند کلاس دیگر یا یک مقدار بزرگ مانند longdouble در زبان سی یا دابل در وی بی باشند که جابجایی داده ها به صرفه نیست . چون مقدار دابل 8 بایت است و مقدار یک اشاره گر 2 بایت . این برنامه رو هم تا قسمتی نوشتم ولی برای بعضی سری اعداد کار نمیکنه3-برنامه تشکیل درخت عبارت infix و تبدیل آن به prefix و postfix از طریق همان درخت . این برنامه رو هم تا این حد نوشتم که فقط به فقط یک عبارت تک پرانتز دار را تبدیل می کند و اصل مشکلش در تشکیل درخت آن است و از نظر تبدیل آن به دو صورت دیگر مشکلی نیست .4- برنامه مرتب سازی توسط درخت هیپ(درخت آن باید به صورت یک لیست پیوندی دوطرفه یا به اصطلاح یک لیست دوپیوندی باشد و نه آرایه) . دیگه دروغ چرا . از این برنامه هیچیشو ننوشتم ولی خب قضیه کامل درخت هیپ رو میدونم ولی نمیتونم با لیست پیاده سازیش کنم .ازتون ممنون میشم اگه کمکم کنید . لطف بزرگی در حقم کردید .MER30

majidrezaei2007
یک شنبه 15 دی 1387, 11:20 صبح
از کمک دوستان ممنونم . واقعا خیلی کامل و به جا بود و به دردم خورد . یعنی یه نفر هم نبود کمک کنه . مهم نیست . مشکلم سر برنامه های 1 و 3 و 4 حل شد . با برنامه 2 مشکل دارم که اونم به امید خدا حل میشه . از کمکهای پربارتون ممنون .