PDA

نسخه کامل مشاهده نسخه کامل : تمامی‌ مسائل و مباحث مربوط به ساختمان داده ها در پاسکال (Data structures).



saman_uv
28-07-2005, 16:05
برنامه ای که یک لیست پیوندی رو بگیره و بر عکس کنه

Nesta
29-07-2005, 02:57
سلام با پاسکال باشه بی زحمت یه توضیحم بدین ممنون میشم
سلام سامان جان.
منظور شما از بر عکس کردن لیست پیوندی یعنی‌ چه عزیز ؟
لیست پیوندی که همان link list و pointer ها هستند که برای سرعت و همچنین بهینه استفاده کردن از حافظه هستند.
شما چه برنامه ای می‌خواهید که با لیست پیوندی نوشته شود .
اصولا میگن که یک Quick sort رو با لیست پیوندی بنویسید .
ولی‌ بر عکس کردن این که مانی‌ نمیده .
حالا شما بفرمائید که چه برنامه ای باشه آیا هر برنامه ای و راجب بر عکس کردنش هم کمی‌ توضیح بدین متشکر میشم.
:D

saman_uv
29-07-2005, 03:05
سلام فرق نمیکنه چه برنامه ای باشه مثلا یه لیستی که دارای 5 تا عضو رو با استفاده از کد نویسی بگیره و اونو سروته کنه همین .فقط با کد نویسی باشه ها

Nesta
29-07-2005, 04:03
سلام من یک معکوس کردن یک لیست رو میگذارم.
procedure invert(var x:pointer);
var
p,q,r:pionter;
begin
p:=x
q:=nil;
while p<> nil do
begin
r:=q;
q:=p;
p:=p^.link; yani {p moves to nest node}
q^.link:=r; yani {link q to preceding node}
end;
x:=q;
end; {of invert}
اینم ایجاد یک گره از لیست پیوندی
procedure create 2(var first:pointer);
var
second:pointer;
begin
new(first);
new(second);
first^.link:=second; yani {link first node to second}
second^.link:=nil; yani {last node}
first^.data:=10; yani entekhab data dar first}
second^.data:=20; yani {entekhab data dar second node .yani eshare gar dovomi}
end; {of create 2}

saman_uv
30-07-2005, 00:07
شرمنده کردی سوالات مربوط به ساختمان داده رو تو کدوم قسمت بپرسم بهتره؟

Nesta
30-07-2005, 02:04
شرمنده کردی سوالات مربوط به ساختمان داده رو تو کدوم قسمت بپرسم بهتره؟
سلام دوست عزیز .
به نظرم فلان همینجا شما سوالات رو بپرس بد اگه ممکن هست فقط خودت موضوع رو ویرایش کن و بزن تمامی‌ مسائل و مباحث مربوط به ساختمان داده ها در پاسکال ((Data structures.
اگه خوب توضیح ندادم دیگه شما ببخشید آخه اینجا متاسفانه کد ها رو نمیتونی‌ از چپ به راست بنویسی‌ و من خیلی‌ سعی‌ کردم که لاقل سیمیکالن ها درست سر جاش باشه.

saman_uv
01-08-2005, 00:28
اگه بخواهیم 2 تا لیست مرتب رو بگیره در هم ادغام کنه و مرتب بنویسه چی کنیم؟اگه کد نویسیشم بکنین حال دادین
:oops:

Nesta
01-08-2005, 01:28
سلام که مینویسم =تحقیق یکسان بودن دو لیست با استفاده از جستجو ی ترتیبی‌ هست
Procedure verify(F1,F2:alist;n,m:integer);
var
i,j:integer;
marked:array[1..maxsize] of boolean;
begin
for i:=1 to m do marked[i]:=false;
for i:=1 to n do
begin
seqsearch(f2,j,m,f1[i].key);
if j=0 then writeln(F1[i].key,'not In F2.')
else begin
if F1[i].other <>F2[j].other then
writeln('Discrepancy In ' , F1[i].key,F1[i].other,F2[j].other);
marked[j]:=true;
end;
end;
for i:=1 to m do
if Not marked[i] then writeln (F2[i].key,'Not In F1.');
end;

saman_uv
01-08-2005, 01:33
اگه بخواهیم 2 تا لیست مرتب رو بگیره در هم ادغام کنه و مرتب بنویسه چی کنیم؟اگه کد نویسیشم بکنین حال دادین
:oops:
سلام خیلی اقایی ولی فکر کنم به سوال دقت نکردی میخوام 2 تا لیست رو قاطی کنه و مرتب بنویسه

Nesta
01-08-2005, 01:36
یعنی‌ این که ما که 2 تا لیست مراتب شده داریم میخواهیم ببینیم که آیا این 2 لیست با هم اول یکی‌ هستند یا نه برای این که ادغام کنیم.
یا این که
درج به لیست مراتب شده .
Procedure insert(r:records;var list:alist; i:integer);
begin
while r.key <list[i].key do
begin
list[i+1]:=list[i];
i:=i-1;
end;
list[i+1]:=r;
end;
شما برای این که بخواهید از رکورد استفاده کنید و هی‌ نزنید نام رکورد بد . بد کی‌ اول with رو باید بزنید در برنامه .
که در داخل این برنامه اینطوری استفاده کنید.
r.key

Nesta
01-08-2005, 01:46
سلام دوست عزیز .
خوب من تا حالا برای همه توضیح میدادم که بدونن چی‌ به چی‌ هست و قدم به قدم گفتم
حالا :
ادغام 2 لیست مراتب شده .
Procedure Merge(var x,z:alist; l,m,n:integer);
var
i,j,k,t:integer;
begin
i:=l; k:=l; j:=m+1;
while ((i<=m) and (j<=n)) do
begin
if x[i].key <=x[j].key then begin
z[k]:=x[i];
i:=i+1;
end
else begin
z[k]:=x[j];
j:=j+1;
end;
k:=k+1;
end; {end of while)
if i > m then for t:=j to n do z[k+t-j]:=x[t]
else
for t:=i do m do z[k+t-i]:=x[t];
end; {end of merge}

توضیحات
if i>m then یعنی‌ (Zk,.....,Zn):=(Xj,....,Xn)
این البته الگوریتم هست دیگه خودت بهتر میفهمی‌ که چی‌ به چی‌ هست ولی‌ خاطرت جمع باشه که کد صحیح هست.
:D

saman_uv
01-08-2005, 01:57
سلام و یک دنیا ممنون. در درست بودن کد هاهم شکی نیست منم منظورم الگوریتم بود مرسی

Nesta
01-08-2005, 02:06
سلام و یک دنیا ممنون. در درست بودن کد هاهم شکی نیست منم منظورم الگوریتم بود مرسی
سلام آقا خواهش می‌کنم کاری نکردم .امید وارم موفق باشید .
اگه باز سوالی‌ داشتید که من حقیر بتونم جواب بدم در خدمتم.
:D

saman_uv
02-08-2005, 00:10
سلام مزاحم همیشگی اومد
تابعی که عددی راگرفته و در یک لیست ان را جستجو کند؟
:oops:

Nesta
02-08-2005, 01:56
سلام سامان جان
.این سوال دیگه مربوط به ساختمان داده ها نمی‌شه عزیز.
این تابع که شما میگید من که ندیدم حالا شاید باشه .معمولا شما باید خودتون این function رو بنویسید.منظور شما حالا توابع خود پاسکال هست یا این که می‌خواهید این تابع رو بنویسیم.
:D :?: :!:

saman_uv
04-08-2005, 11:29
سلام بي زحمت ميخواستم تابع رو بنويسين

Nesta
04-08-2005, 22:39
سلام مزاحم همیشگی اومد
تابعی که عددی راگرفته و در یک لیست ان را جستجو کند؟
:oops:
سلام سامان جان این البته مربوط به ساختمان داده ها نمی‌شه موافقی‌ ؟
ولی‌ من بهت بگم که باید اول لیستی‌ داشته باشی‌ که بخوای در آن لیست عددی که وارد می‌شه رو جستجو کنی‌ یا نه؟ اون لیست هم باید باشه که حالا اگه بود جستجو کنه اگه نبود بگه که این عدد مورد نظر شما موجود نبود درسته ؟
:D

saman_uv
05-08-2005, 21:46
سلام کاملا مخالفم چون این مبحث مربوط به ساختمان داده میشه ولی با ادامه صحبتات کاملا موافقم
یه لیست پیوندی داریم حالا توش هر چی هست بی خیال تو اون لیست میخواهیم دنباله یه عدد بگردیم حالا اگه برنامش رو لطف کنی ممنون میشم

saman_uv
06-08-2005, 19:56
سلام دیگه اونو نمیخوام برنامه preorder یا postorder رو کسی بلده؟برای امشب میخوام

Nesta
06-08-2005, 22:02
سلام سامان جان .
یعنی‌ همون postorder preorder حالت پسوندی و پیشوندی stack دیگه من الگوریتم مینویسم برات .

Nesta
06-08-2005, 22:19
Preorder:رفتن به چپ -اگه حرکت ممکن نبود به راست و شروع مجدد یا برگشت به عقب تا جائی‌ که حرکت به راست ممکن شود و ادامه .
Postorder: مانند A b / c d * e + اینطوری هست یعنی‌ اول با مثال میگم.
Procedure Preorder (CurrentNode:TreeNode:treePointer);
begin
if CURRENTNODE <> NIL then
begin
write (CurrentNode.data); yani in ke flesh ro be bala bad .data
preorder(CurrentNode.leftchild);
Preorder(CurrentNode.RightChild);
end {of if}
end; {of preorder}
یعنی‌ پدر چپ تا جائی‌ که می‌شه حالا به راست .اینطوری که میدونی‌ یعنی‌ چی‌ میگم؟ نخواندی بگی‌ اینا چی‌ اینا اصطلاحات بر ای تست کنکور کارشناسی‌ هست .


حالا
Procedure Postorder(Currentnode:Treepointer);
begin
IF CurrentNode <> NIL then
begin
Postorder(Currentnode.Leftchild);
Postorder(Currentnode.Rightchild);
Write(CurrentNode.data);
end {of if}
end; {of Postorder}
سامان جان حالا inorder هم هست ولی‌ نگفتی‌ می‌خوام اگه خواستی‌ اونم میگم .

saman_uv
06-08-2005, 22:23
خیر از جونیت ببینی نه دیگه اونیکی رو نمیخوام دمت گرم

Nesta
06-08-2005, 22:29
خیر از جونیت ببینی نه دیگه اونیکی رو نمیخوام دمت گرم
سلام آقا قابلی‌ نداشت الان آقای کوسه میگه چرا پست بیهوده میدی .خواهش می‌کنم. :D

saman_uv
08-08-2005, 21:58
سلام برنامه ای که تعداد برگهای یک درخت رو بشماره؟

Nesta
08-08-2005, 23:56
سلام سامان جان این برنامه یا الگوریتم نداره این یک فرمول داره که تعداد برگ های یک درخت رو میتونی‌ به دست بیاری .که اونم من دقیق یادم نیست ولی‌ فرمول رو بلد باشی‌ که احتمالا بهت گفتن میتونی‌ با همون بسازی .اگه فرمول رو میدونی‌ بگو .من خیلی‌ وقت پیش یادم بود .3 سال پیش . :D

saman_uv
09-08-2005, 00:03
منم بلد نیستم ولی احتمال میدم این باشه
2 ^ n-1

Nesta
09-08-2005, 01:21
سلام سامان جان البته این در درخت های دودیی‌ نخی‌ فرق می‌کنه ها یعنی‌ به نظرم فرمولش ثابت نیست .

saman_uv
09-08-2005, 02:01
عرضه ادب نستا جان
برای همین فرمول کاش زحمت کد نویسیشو بکشی یا راهنمایم کنی که باید چیکار کنم فرمولشم زیاد مهم نیست فکر کنم تو ریاضی گسسته فرمولش باشه میگردم اگه پیداش کردم میگم

Nesta
10-08-2005, 02:37
سلام سامان جان تو فرمول دقیق رو بنویس که مثلا k می‌شه گره یا i می‌شه برگ مثلا فرمول رو بنویس جلوش بزن که اینا چی‌ به چی‌ هست و میخای چی‌ محاسبه بشه من ببینم چه می‌کنم برات . :D

saman_uv
10-08-2005, 22:44
سلام نستا جان خسته نباشی
اگه p ریشه باشه و q برگ باشه احتمالا با روش زیر حل شه
p=q+1
البته تو کتاب گسسته اینجوری نوشته بود خودم ترجمش کردم به این نتیجه رسیدم درست یا غلط نمیدونم

Nesta
11-08-2005, 03:07
سلام سامان جان این فرمول غلط هست چرا؟
چون که شما میخای تعداد برگ های یک گره رو به دست بیاری .
خوب p=q+1 این که گره رو بدست میاری و از روی برگ های یک گره + 1
ولی‌ شما بر عکس این رو میخای یعنی‌ باید گره رو بدی برات تعداد برگ های اون رو محاسبه کنه درسته ؟
:D

saman_uv
11-08-2005, 09:25
سلام سامان جان این فرمول غلط هست چرا؟
چون که شما میخای تعداد برگ های یک گره رو به دست بیاری .
خوب p=q+1 این که گره رو بدست میاری و از روی برگ های یک گره + 1
ولی‌ شما بر عکس این رو میخای یعنی‌ باید گره رو بدی برات تعداد برگ های اون رو محاسبه کنه درسته ؟
:D
سلام راست میگی مخ من دیگه فاز نمیده مثله اینکه باید بیخیالش شیم :cry: :cry: :cry:

Nesta
11-08-2005, 18:56
سلام سامان جان اگه دوستانی‌ که خوب داری میتونی‌ فرمول رو سوال کنی‌ خیلی‌ راحت هست به خدا من گشتم پیدا نکردم برات و گر نه که میگزشتم حالا باز اگه دیدی بگو چون 5-6 خط بیشتر نمی‌شه یعنی‌ تعداد گره رو میدی بد با استفاده از اون فرمول میگی‌ که تعداد برگ های اون درکه رو محاسبه کنه .

saman_uv
23-08-2005, 01:22
سلام از اينكه شما زحمت ميكشي خيلي ممنونم
نستا جان شما اين درسا رو گذروندي تو كاري از هر مبحثه ساختمان سه چارتا از سوالهاي كه احتمال ميدي براي امتحان بياد بگي؟ (پيچيدگي.درخت.ليست پيوندي.صف و پشته) با تشكر

Nesta
23-08-2005, 03:08
1-الگوریتم quick sort یا quick Search
2-عدد 10 رو به وسط گره اضافه کنید با الگوریتم .
3- یک گره رو از انتهای یک لیست حذف کنید.
4-درج یک گره به فلان لیست .
5-درخت دودیی‌ ..مثلا پیماش inorder or preorder ETGD...
رو بکشید.
6-عمق این گره چقدر هست .اگه یک درخت N تا سطح داشته باشه مثلا چند تا برگ داره با فرمول .
مربع جادویی‌ ...
اگه خونده باشی‌ .
postfix-prefix
ایجاد یک لیست با دو گره .
اضافه به یرک پشته پیوندی -یا صف پیوندی.
سطح فلان گره چند عضوی .
2تا سوال حتمی‌ اینطوری که میگن ADFDHEF رو بر اساس preorder در مثلا درخت دودیی‌ راسم کنید .
یا شکل میدان میگن preorder آن چی‌ می‌شه .
عداد فیبو منچی‌ ‌...
heap ها .اینا اکثرا سوال ها هست .

komeyl
01-09-2005, 06:03
سلام سامان جان
.این سوال دیگه مربوط به ساختمان داده ها نمی‌شه عزیز.
این تابع که شما میگید من که ندیدم حالا شاید باشه .معمولا شما باید خودتون این function رو بنویسید.منظور شما حالا توابع خود پاسکال هست یا این که می‌خواهید این تابع رو بنویسیم.
:D :?: :!:سلام من یه برنامه با پاسکال میخوام که بتونه تاریخ میلادی رو به هجری و برعکس تبدیل کنه :?: :idea:

Nesta
01-09-2005, 14:53
سلام آقای komeyl .
ورود شما رو تبریک میگیم.
ولی‌ دوست عزیز اینجا مربوط به پاسکال نمی‌شه شما لطف کنید در قسمت پاسکال سوال کنید .متشکر.

sharifnia
14-10-2005, 21:07
:evil: سلام به همه
من يه برنامه مي خوام كه يك سري عدد را گرفته و در يك آرايه به صورت مرتب شده بريزه.
بعدش بتونه هر عددي رو كه بخوايم به آرايه اضافه كنيم جوري اضافه كنه كه ترتيب آرايه به هم نخوره
با كد پاسكال
به صورت زير:
1- آرايه اي را بگير و آن را مرتب كن
2-عددي را كه مي خواهيم وارد آرايه كنيم را بگير
3-مكان مناسب عدد جديد را پيدا كن
4-شيفت دادن تمام اعداد كوچكتر از عدد جديد ( واسه اينكه يه جايه خالي ايجاد بشه)
5-درج عدد جديد در جاي خالي اي كه ايجاد كرديم
( البته اگه از راههاي ديگه هم بتونين ممنون ميشم) ;)

Nesta
15-10-2005, 02:58
سلام دوست عزیز اون برنامه که می‌خواهید آقای کمیل ،سورسش در سایت ها وجود داره منتها شاید برای دلفی‌ باشه ولی‌ شما از کد های اون میتونین استفاده کنین.و احتمالا یک procedure هست .

saman_uv
17-10-2005, 13:48
طرزه ساخت یه درخت heap رو میخواستم

daryamehr
18-10-2005, 10:07
سلام دوستان
من تازه دارم پاسكال و سي ياد مي گيريم مي شه بگين اين برنامه چه كار ميكنه؟
procedure p(var x:byte;y:byte);
مي خوام بدونم byte چه بلايي سر متغير ها مي آره؟
مي دونم كلاس سئوالم پايينه
ولي لطفا جواب بدين

hedi
06-11-2005, 14:50
ا عرض سلام خدمت دوستان
اگر كسي در خصوص با ليست هاي پيوندي سررشته داره يا كاركرده كمك كنه
رويه اي بنويسيد كه در ليست پيوندي خطي يكطرفه تعداد گره ها را مشخص و چاپ نمايد و سپس عنصر وسط را حذف نمايد
حذف عنصر وسط به اين صورت است كه اگر تعداد گره هاي ما اگر 7 تا بود 4مين گره را حذف كند واگر 8 تا گره بود 5 گره را حذف كند.
خيلي نياز دارم و تشكر

saman_uv
12-11-2005, 02:02
ا عرض سلام خدمت دوستان
اگر كسي در خصوص با ليست هاي پيوندي سررشته داره يا كاركرده كمك كنه
رويه اي بنويسيد كه در ليست پيوندي خطي يكطرفه تعداد گره ها را مشخص و چاپ نمايد و سپس عنصر وسط را حذف نمايد
حذف عنصر وسط به اين صورت است كه اگر تعداد گره هاي ما اگر 7 تا بود 4مين گره را حذف كند واگر 8 تا گره بود 5 گره را حذف كند.
خيلي نياز دارم و تشكر
سلام اول که باید 2 تا اشاره گر به اول لیست بگیری بعد یکیشون رو هی لینک کنی یکی جلوتر که خونه بعدی چک قبلشم که باید یه حلقه بذاری شرطشم این باشه که تا زمانی که مثلا به اخر حلقه نرسیده این کار رو انجام بده(تا لینکه اشاره گر مساوی نیل بشه)برای اینکه تعداد گره ها رو هم بدست بیاری هر وقت که اشاره گر اول رو لینک دادی به یه متغیر یک واحد اضافه کنی و در اخر متغیر رو چاب کنی

iceage_2098
02-01-2006, 01:16
تو پاسکال چطوری مکان نما رو حذف کنم یا دیده نشه
ممنون

Darkvador1726
28-04-2006, 18:21
Agha salam ! KOMAAAAK ! be ye barname ehtyaj daram , dar vaghe be ye list e dotarafe ke beshe daresh insert kard va delete , Plz HELP ! baraye farda sobh bayad erae bedam :( :( :( Ba Turbo Pascal
)PLZ HELP ! :sad: :sad: :sad: :sad: ( Code Plz )

ALIREZA AZIZI
25-06-2006, 17:32
سلام
آقا من يه مشكلي دارم كه اگه كمكم كنيد ممنون مي‌شم
براي تعريف يك ليست پيوندي 50 تايي چه كار بايد بكنم؟
خيلي حياتي و مهمه اگه كمك كنيد ممنون مي‌شم خيلي فوريه

ALIREZA AZIZI
26-06-2006, 10:51
سؤال اولم رو بي‌خيال خودم فهميدم
حالا يه سؤال ديگه دارم
در حالت گرافيك چجوري مي‌تونم يك عكس رو پاك كنم

andishe22
18-12-2006, 22:24
سلام.چرا کسی به داده اونکه تویه صفحه ی 6 کمک می خواد نمی رسه؟

andishe22
18-12-2006, 22:30
کمک.صفحه 6رو باز کنید.لطفا

andishe22
18-12-2006, 22:30
توی صفحه ی 6 نوشته یکی به کمکتون نیاز داره.مهمه

andishe22
18-12-2006, 22:53
سلام من اولین باره که میام توی این سایت و بدجوری گیر افتادم بعد از 5 ساعت کار کردن تازه فهمیدم چطور باید از شما سوال کرد حالا هم که فهمیدم کسی به دادم نمی رسه .من واسه 3 روز دیگه باید یه proje بدم به استادم .یه برنامه ی paskal می خوام که رکرد و ارایه توش به کار رفته باشه هر برنامه ای که فکر می کنید جالبه و به درده من می خوره خواهش می کنم بهم بگید لطفا.خواهش می کنم هر چه سریعتر کمکم کنید.مساله ی افتادن و نیافتادنه...مثل مساله ی مرگ و زندگی.....لطفا.

moto_mto
24-12-2006, 16:31
salam man procedure sakht va piyaadesaazy va peymaayeshe derakhte heap ro mikhaam age kasy be codesh too pascal dasresy daare baram befreste

shamim8625
28-01-2007, 16:31
با سلام

بر نامه اي كه يك صف دو سره را با آرايه پياده سازي كند

shamim8625
29-01-2007, 20:04
با سلام

برنامه اي كه يك صف دو طرفه را با آرايه پياده سازي كند يك صف يك طرفه رو پياده سازي كردم كسي نمي دونه چطور ميشه دو طرفه رانوشت؟

آلو جنگلي
31-01-2007, 20:46
خسته نباشید
امکانش هست برنامه ایی که با حرکت L یک اسب را در تمام خانه های شطرنج حرکت دهد برام بگزارید.

majid3612
28-05-2007, 10:26
با سلام خدمت تمامی دوستان:

من پیاده سازی درخت دودویی BST را به اضافه پیاده سازی درخت heap را به زبان C یا ++C می خاستم خیلی ضروریه لطفا هر کی داره یا می تونه بنویسه به ایمیلم بفرسته .

خیلی ممنون

pmail2006@gmail.com

H A M E D
28-05-2007, 16:48
با سلام خدمت تمامی دوستان:

من پیاده سازی درخت دودویی BST را به اضافه پیاده سازی درخت heap را به زبان C یا ++C می خاستم خیلی ضروریه لطفا هر کی داره یا می تونه بنویسه به ایمیلم بفرسته .

خیلی ممنون

pmail2006@gmail.com
دوست عزيزم اينجا انجمن دلفي هست.

ورونیکا
10-06-2007, 13:46
با سلام
برنامه ای که اولین گره یک لیست پیوندی را حذف کندو به ابتدای یک لیست پیوندی یک گره اضافه کند

مرد مباح
10-06-2007, 14:02
اینی که نوشتی یعنی چی ؟؟

ورونیکا
10-06-2007, 19:07
یعنی
1-ساختن لیست جدید
2-نمایش لیست جدید
3-حذف کامل لیست
4-حذف اولین گره یک لیست پیوندی
5-اضافه کردن یک گره به ابتدای یک لیست پیوندی

مرد مباح
11-06-2007, 14:04
من منظورتو از گره و لیستهای پیوندی متوجه نمیشم.
من دیتابیس پاسکال رو کار کردم ولی این که می گی رو نمیشناسم.
البته کار اصلی من دلفی هست و پاسکال رو در حد پروژه دانشجوئی نویسی بلدم و کار کردم.

اگه میشه درباره اون دوتا موضوع یک کمی توضیح بده.

ورونیکا
16-06-2007, 19:38
شما ساختمان داده ها کار کردید

MasterData
17-06-2007, 08:05
یعنی
1-ساختن لیست جدید
2-نمایش لیست جدید
3-حذف کامل لیست
4-حذف اولین گره یک لیست پیوندی
5-اضافه کردن یک گره به ابتدای یک لیست پیوندی

توي اين فايل تمام برنامه هاي ساختمان داده هست بايد برنامه مورد نظرت رو پيدا كني [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

azalia
11-08-2007, 14:42
سلام.کسی میتون یه رابطه بازگشتی برا مساله زیر بنویسه

فرض کنید در مساله برجهای هانوی می خواهیم n دیسک را از میله سمت چپ به میله سمت راست منتقل نماییم ولی علاوه بر 2 محدودیت دیگرٍ، در هر حرکت فقط مجاز به انتقال یک دیسک از میله به میله مجاور آن هستیم.تعداد جابجایی های لازم را برای این کار محاسبه کنید(یک رابطه بازگشتی نوشته و حل کنید)

mrnline
06-03-2008, 11:12
لطفا حل کنید کسی این رو بلد حل کنه. خیلی ممنون.




t(n)=1 n=1
t(n-1)+t(n-2) n>1
email:mrnline_2008@yahoo.com

mrnline
06-03-2008, 11:12
لطفا حل کنید کسی این رو بلد حا کنه. خیلی ممنون.




t(n)=1 n=1
t(n-1)+t(n-2) n>1
email:mrnline_2008@yahoo.com

mrnline
06-03-2008, 11:20
لطفا تا روز شنبه حل کنید.
email:mrnline_2008@yahoo.com

t(n)= 1 n=1
t(n-1)+ t(n-2) n>1

romixery
06-03-2008, 18:32
سلام - به انجمن خوش اومدين
1- لازم نيست كه سه بار پست بدين. فكر كنم يك دفعه كافي باشه
2- لطفاً بيشتر در مورد سوالتون توضيح بدين. اينجوري من نفهميدم اينا يعني چي. مي خواين با اين رابطه چي كار كنيد؟ به نظر يه رابطه بازگشتي مياد. درسته؟

darkwater
30-04-2008, 09:24
برنامه تبدیل postfix به infix

saraaliyazdi
17-05-2008, 10:54
سلام،
من دارم برای کنکور کاردانی به کارشناسی می خونم. توی کتاب تست 2تا مبحث رو نفهمیدم:
1- آرایه ها
2- لیست پیوندی
هرچی کتاب رو خوندم نفهمیدم. نمی دونم چرا :13:احتمالا مشکل از گیرنده است!
اگه لطف کنید و برام یه توضیح ساده و مفهوم بگذارید ممنون میشم یک دنیا!!

ramiy
03-06-2008, 17:01
سلام
من یه پروژه دارم تو دانشگاه و در درس ساختمان داده به شرح زیر :
برنامه ای بنویسید که با استفاده از کد هافمن یک فایل را فشرده نماید و فایلی را که توسط این کد ایجاد شده است را بسط دهد (از حالت فشرده خارج کند)
برنامه باید فایل را بخواند و تعداد فراوانی هر کاراکتر و تعداد کل کاراکتر ها فایل را محاسبه نماید.
نسبت فشردگی را محاسبه نماید.
نسبت فشردگی تعداد بیتهای موجود در فایل فشرده تقسیم بر تعداد کل بیتها در فایل اصلی است.(تعداد بیتها 8 برابر کاراکتر های موجود در فایل است)

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

ramiy
04-06-2008, 00:15
خواهش میکنم
اگه کسی اطلاعاتی داره کمک کنه
کتاب منبع هم ساختمان داده در پاسکاال نوشته قمی هست.
مرسی

reza.majazi
08-06-2008, 22:56
خسته نباشین

کسی به سوال من جواب بده لطف بزرگی کرده چون چند وقت دیگه امتحان پایان ترم دارم !!

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

توی صف حلقوی Front و rear رو چطور بدست بیارم البته می دونم فرمولش اینه

Front=(front+1)mod maxq

rear=(rear+1)mod maxq

تشکر .

alikingofnet
23-06-2008, 09:55
salam
komak
4 ta barna darbareye poshteha mikham
1-tabdile ebarate infix be postfix
2-tabdile ebarate infix be perfix
3-tabdile ebarate postfix be infix
4-tabdile ebarate perfix be infix

reza.majazi
23-06-2008, 17:40
دیگه زحمت نکشید امتحان دادم !!! :31:

اتفاقا صف حلقوی هم اومده بود ولی تابع ش که بلد بودم :27:

sta20r
03-07-2008, 21:45
سلام اگه میشه حذف کردن و جستجو در لیست پیوندی را برای من لطف کنید. با سپاس فراوان

Matinhadi
05-02-2010, 12:53
برنامه ی ضرب دو چندجمله ای را به زبان پاسکال می خواستم . کسی می تونه کمکم کنه؟

aba_ras
26-12-2011, 16:23
کتاب ساختمان داده ها در پاسکال رو کسی نداره فقط گراف و درخت رو خوب توضیح داده باشه مال قمی رو دارم

immortalson
09-01-2012, 14:40
Partition (low, high,var Pivot:integer);
var i, j, PivotItem:integer;
begin
PivotItem:=A[low];
i:=low; j:=high;
while (i<j) do
begin
swap (A[i], A[j]);
while (A[i]<PivotItem) do
i:=i+1;
while (A[j]>=PivotItem) do
j:=j-1;
end;
Pivot:=I;
swap (A[high], A[PivotPoint]);
end;



---------- Post added at 02:40 PM ---------- Previous post was at 02:38 PM ----------


function search (x:element_type; x:hash):Boolean;
var i:integer;
p:list;
begin
i:=h(x);
p:=s[i];
while (p<>nil) and (p^.element<>x) do
p:=p^.next;
if p=nil then
return false
else
return true;
end;
تمرين: رويه هاي delete و insert را در روش Open hash بنويسيد.

behzadcin
01-06-2012, 22:20
سلام خسته نباشین به منتقلان علم
تقاضای برنامه به زبان پاسکال راکه از 50عدد وارده بزرگترین و کوچکترین عدد را دذر خروجی چاپ کند .
ممنوع

c.c.luncher
03-12-2013, 10:38
سلام بچه ها : برنامه ای بنویسید که با استفاده از عملیات اصلی پشته وصف نشان دهد رشته متقارن است یا خیر؟