PDA

View Full Version : دستور معادل این شبه کد در سی شارپ چیست ؟



zahra-joon
جمعه 18 اردیبهشت 1394, 17:22 عصر
سلام دوستان
معادل سی شارپ این دستور چی میشه؟

copy a[0] through a[h-1] to u[0] through u[h-1]
copy a[h] through a[n-1] to v[0] through v[m-1]

در واقع قسمتی از شبه کد مرتب سازی ادغامی هست.
باید با حلقه بنویسم یا تو سی شارپ دستوری هست که بگه از این اندیس تا این اندیس ارایه رو بریز تو فلان قسمت یه ارایه ی دیگه؟؟؟

بیتا حکمت
جمعه 18 اردیبهشت 1394, 17:34 عصر
سلام . می تونید از دستور array-copy (http://www.dotnetperls.com/array-copy) استفاده کنید.

مثال :




int[] source = new int[5];
source[0] = 5;
source[1] = 4;
source[2] = 3;
source[3] = 2;
source[4] = 1;
//
// Instantiate the target.
//
int[] target = new int[3];
Array.Copy(source, 2, target, 0, 3);

foreach (int value in target)
{
MessageBox.Show(value.ToString());
}

zahra-joon
جمعه 18 اردیبهشت 1394, 18:20 عصر
ممنونم
فکر میکنم اینطوری میشه

Array.Copy(a, 0, u, 0, h );
Array.Copy(a, h, v, 0, m );

تشکر :)

بیتا حکمت
جمعه 18 اردیبهشت 1394, 18:37 عصر
ممنونم
فکر میکنم اینطوری میشه

Array.Copy(a, 0, u, 0, h - 1);
Array.Copy(a, h, v, 0, m - 1);

تشکر :)

سورس الگوریتمی که نیاز داری تو این لینک (http://www.sanfoundry.com/csharp-program-merge-sort/)هست . اما در مورد متدی که معرفی کردم




Array.Copy(source, 0, target, 0, 3);



یعنی از ارایه source اندیس صفر تا سوم ، در ارایه target (اندیس صفر تا سوم ) کپی کن . اگر کدها رو یکم تغییر بدی و خروجی ها رو ببینی بهتر از هر توضیحی درکش می کنید .

zahra-joon
جمعه 18 اردیبهشت 1394, 22:04 عصر
میشه تو درست کردن این برنامه مرتب سازی ادغامی (Merge Sort) بهم کمک کنین؟
اون الگوریتمی که شما لینک دادین روش پیاده سازیش با این فرق داره. من این مدلی لازم دارم *_*
کلی وقت گذاشتم ولی نتونستم خروجی بگیرم. یعنی دیگه نمیدونم چیکار کنم:دپرس:

hoseinharami
یک شنبه 20 اردیبهشت 1394, 00:09 صبح
سلام
این مرتب کردن ادغامی چی هست؟
یک توضیح بده تا کمکت کنیم

zahra-joon
یک شنبه 20 اردیبهشت 1394, 09:49 صبح
سلام
این مرتب کردن ادغامی چی هست؟
یک توضیح بده تا کمکت کنیم
http://upload.wikimedia.org/wikipedia/commons/c/cc/Merge-sort-example-300px.gif
سلام
مرتب سازی ادغامی مثل شکل بالا هست... توضیحات بیشتر در ویکی پدیا (http://fa.wikipedia.org/wiki/%D9%85%D8%B1%D8%AA%D8%A8%E2%80%8C%D8%B3%D8%A7%D8%B 2%DB%8C_%D8%A7%D8%AF%D8%BA%D8%A7%D9%85%DB%8C)
تو این تاپیک (http://barnamenevis.org/showthread.php?494595-درخواست-کمک-در-تبدیل-شبه-کد-مرتب-سازی-ادغامی-به-معادل-سی-شارپ-آن) مطرح کردم و حل شد دوست عزیز... ممنونم...