fun_code 222 ارسال شده در 30 مهر، 2022 اشتراک گذاری ارسال شده در 30 مهر، 2022 سلام دوستان دارم روی ربات شطرنج کار میکنم. یک آرایه 8 در 8 دارم و نیازه بارها این آرایه در یک آرایه موقت کپی بشه. اینکار رو با دو حلقه for انجام دادم اما کند هست. آیا کد سریعی برای کپی شدن یک آرایه چند بعدی در یک آرایه چند بعدی دیگر وجود داره ؟ ممنون از شما لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
fun_code 222 ارسال شده در 6 آبان، 2022 سازنده اشتراک گذاری ارسال شده در 6 آبان، 2022 درود به شکل دیگری حلش کردم. با طراحی بازگشت یک حرکت انجام شده... ممنون از همراهی شما عزیزان لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
fun_code 222 ارسال شده در 2 آبان، 2022 سازنده اشتراک گذاری ارسال شده در 2 آبان، 2022 در ۱۴۰۱/۵/۱۱ در 09:03، DexterFstone گفته است: عزیز از آرایع یک بعدی استففاده کنید کلا شطرنج و رباتش هر کاری که کنید طول میکشه تا پردازش کنه برای مثال بازی شطرنج ویندوز 7 را اجرا کنید و سطح بازی ببرید روی 10 وقتی شما یک حرکت کنید ربات بعد 10 الی 15 ثانیه میره حرکت را ولی میتونین برای بهبود سرعت از آرایه یک بعدی و فرمول زیر برای تبدیل به دوبعدی استفاده کنید array[width * row + col] با فرمول بالا میتونین از آرایه یک بعدی به عنوان دوبعدی استفاده کنید برای مثال خونه شماره 4 3 را میخوام (8*3+4) = 28 ایندکس شماره 28 درواقع باید تغییر کنه و همون معادل سطر 3 ستون 4 در یک آرایه 2 بعدی هست موفق باشید سلام در ابتدا تشکر میکنم بابت راهنماییتون اگر کپی کردن از طریق متغیر لیست با استفاده از آرایه یک بعدی اوکی بود تغییرش به آرایه 1 بعدی ارزش داشت. اما الان تست کردم و وقتی تغییری در آرایه اعمال میشه ، در آرایه اضافه شده به لیست هم تاثیر داره... برای همین تغییرش به آرایه 1 بعدی تاثیری در سرعت نداره و در هر حال باید 64 خانه را پیمایش کرد. دستوراتی هم برای کپی کردن آرایه در سایت رسمی دیدم و درست عمل نمیکردن. اکثرا هم با حلقه کپی رو انجام میدادن ! در رابطه با سرعت ، بنده روی depth یا بعبارتی همان سطح 4 قرار میدم و گاهی حرکت ربات 50 ثانیه طول میکشد. وار به حال اینکه برای حرکات قوی تر روی 5 و بالاتر قرارش بدم. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
fun_code 222 ارسال شده در 31 مهر، 2022 سازنده اشتراک گذاری ارسال شده در 31 مهر، 2022 در ۱۴۰۱/۵/۹ در 10:46، DexterFstone گفته است: فکنم اگه داخل لیست بریزید سریع تر باشه اول یک آرایه چند بعدی خالی بسازید و بعد به تعداد که نیاز دارید به لیست اضافه کنید Dim arr() as int list.add(arr) و به همین ترتیب سلام ممنونم ✋ تست میکنم لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
fun_code 222 ارسال شده در 1 آبان، 2022 سازنده اشتراک گذاری ارسال شده در 1 آبان، 2022 در ۱۴۰۱/۵/۹ در 10:46، DexterFstone گفته است: فکنم اگه داخل لیست بریزید سریع تر باشه اول یک آرایه چند بعدی خالی بسازید و بعد به تعداد که نیاز دارید به لیست اضافه کنید Dim arr() as int list.add(arr) و به همین ترتیب متغیر های لیست و آبجکت و آرایه چند بعدی مشابه تست کردم و نشد. گویا حتما باید خونه خونه کپی بشه ! لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ali mo 264 ارسال شده در 1 آبان، 2022 اشتراک گذاری ارسال شده در 1 آبان، 2022 سلام وقت بخیر با یک ارایه پیش ببرید کار رو اگر امکانش هست به صورتی که که مثلا اندیس چند بعدی شو شماره دهی کنید مثلا : یک لیست تعریف کنید بعد داخل یک لیست شماره گزاری کنید list(1) = "iteme1,item2,item3,item4" بعد هنگام خواندن از ریجکس استفاده کنید و جدا کنید و بخونید فکر کنم این روش بهتر باشه چون مقدار فور ها یدونه میشه و سریع تر هم هست و اون جوری از انتصاب هم میتونم استفاده کنید که چون با ادرس دهی کار میکنه سریع تره مثلا : list1 = list2 (شاید غیر استاندارد باشه این روش ولی باید تست بشه و دیده بشه که سرعت بالاتر یا خیر) 2. از نخ استفاده کنید برای جابه جایی 3- داخل سایت مرجع هم جستجو کنید 4- از چند لیست هم میتونید استفاده کنید list1 , list2 موفق باشید و یاعلی لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
fun_code 222 ارسال شده در 2 آبان، 2022 سازنده اشتراک گذاری ارسال شده در 2 آبان، 2022 در ۱۴۰۱/۵/۱۰ در 12:27، ali mo گفته است: سلام وقت بخیر با یک ارایه پیش ببرید کار رو اگر امکانش هست به صورتی که که مثلا اندیس چند بعدی شو شماره دهی کنید مثلا : یک لیست تعریف کنید بعد داخل یک لیست شماره گزاری کنید list(1) = "iteme1,item2,item3,item4" بعد هنگام خواندن از ریجکس استفاده کنید و جدا کنید و بخونید فکر کنم این روش بهتر باشه چون مقدار فور ها یدونه میشه و سریع تر هم هست و اون جوری از انتصاب هم میتونم استفاده کنید که چون با ادرس دهی کار میکنه سریع تره مثلا : list1 = list2 (شاید غیر استاندارد باشه این روش ولی باید تست بشه و دیده بشه که سرعت بالاتر یا خیر) 2. از نخ استفاده کنید برای جابه جایی 3- داخل سایت مرجع هم جستجو کنید 4- از چند لیست هم میتونید استفاده کنید list1 , list2 موفق باشید و یاعلی سلام و وقت بخیر ممنون کلا وقتی آرایه چند بعدی رو در متغیر از نوع لیست ریختم و برگردوندم خراب شد. حتی متغیر آبجکت هم تست کردم. فکر میکنم اگر این کپی شدنه سریع بشه هر حرکت ربات در ماکزیمم حالت (پیچیده ترین حرکت) به جای 50 ثانیه به 20 ثانیه برسه. یا در حدودا مینیمم ترین حالت به جای 3 ثانیه به 1 ثانیه برسه. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
fun_code 222 ارسال شده در 2 آبان، 2022 سازنده اشتراک گذاری ارسال شده در 2 آبان، 2022 در ۱۴۰۱/۵/۱۱ در 06:02، fun_code گفته است: سلام و وقت بخیر ممنون کلا وقتی آرایه چند بعدی رو در متغیر از نوع لیست ریختم و برگردوندم خراب شد. حتی متغیر آبجکت هم تست کردم. فکر میکنم اگر این کپی شدنه سریع بشه هر حرکت ربات در ماکزیمم حالت (پیچیده ترین حرکت) به جای 50 ثانیه به 20 ثانیه برسه. یا در مینیمم ترین حالت به جای 7 ثانیه به 3 ثانیه برسه. فراموش کردم عرض کنم که کلا عملیات در thread انجام میشن. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
DexterFstone 399 ارسال شده در 2 آبان، 2022 اشتراک گذاری ارسال شده در 2 آبان، 2022 در ۱۴۰۱/۵/۱۱ در 06:02، fun_code گفته است: سلام و وقت بخیر ممنون کلا وقتی آرایه چند بعدی رو در متغیر از نوع لیست ریختم و برگردوندم خراب شد. حتی متغیر آبجکت هم تست کردم. فکر میکنم اگر این کپی شدنه سریع بشه هر حرکت ربات در ماکزیمم حالت (پیچیده ترین حرکت) به جای 50 ثانیه به 20 ثانیه برسه. یا در حدودا مینیمم ترین حالت به جای 3 ثانیه به 1 ثانیه برسه. عزیز از آرایع یک بعدی استففاده کنید کلا شطرنج و رباتش هر کاری که کنید طول میکشه تا پردازش کنه برای مثال بازی شطرنج ویندوز 7 را اجرا کنید و سطح بازی ببرید روی 10 وقتی شما یک حرکت کنید ربات بعد 10 الی 15 ثانیه میره حرکت را ولی میتونین برای بهبود سرعت از آرایه یک بعدی و فرمول زیر برای تبدیل به دوبعدی استفاده کنید array[width * row + col] با فرمول بالا میتونین از آرایه یک بعدی به عنوان دوبعدی استفاده کنید برای مثال خونه شماره 4 3 را میخوام (8*3+4) = 28 ایندکس شماره 28 درواقع باید تغییر کنه و همون معادل سطر 3 ستون 4 در یک آرایه 2 بعدی هست موفق باشید لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
DexterFstone 399 ارسال شده در 31 مهر، 2022 اشتراک گذاری ارسال شده در 31 مهر، 2022 فکنم اگه داخل لیست بریزید سریع تر باشه اول یک آرایه چند بعدی خالی بسازید و بعد به تعداد که نیاز دارید به لیست اضافه کنید Dim arr() as int list.add(arr) و به همین ترتیب لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
سوال
fun_code 222
سلام دوستان
دارم روی ربات شطرنج کار میکنم.
یک آرایه 8 در 8 دارم و نیازه بارها این آرایه در یک آرایه موقت کپی بشه.
اینکار رو با دو حلقه for انجام دادم اما کند هست.
آیا کد سریعی برای کپی شدن یک آرایه چند بعدی در یک آرایه چند بعدی دیگر وجود داره ؟
ممنون از شما
لینک ارسال
به اشتراک گذاری در سایت های دیگر
9 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.