الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكله بسيطه في insertion code

بدأه muzamil87 في 27 فبراير 2010 · 2 رد · 421 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

لدي مشكله في اكمال كود يقوم بعمل خوارزمية insertion code ,, الكود شبه مكتمل الان ولكن ينقصني اضافة counter يقوم بحساب عدد ال swap واخر يقوم بحساب عدد ال comparisons في ال array

هذا ما توصلت اليه في كتابة الكود من غير العدادين المطلوبين ولا اعلم اين اضعهما في الكود..

الكود

public void insertionsort(int[] data) {
for (int i = 1,j; i < data.length; i++) {
int tmp = data;
for (j = i,j; j > 0 && tmp < daya[j-1]; j--) 
data[j] = data[j-1] ;
data[j] = tmp;
}
}

تم تعديل هذه المشاركة بواسطة muzamil87 في 27 فبراير 2010 في 13:52

#2

ممكن توضح أكثر؟


HeartOutputStream myHeart;
OutputStream myHeartOutStream;

myHeartOutStream = MAllaw.getHeart().getOutputStream();
myHeart = new HeartOutputStream(myHeartOutStream);

while(myHeart.isStillBeating())
myHeart.write("I ♥ Java");

#3

اخي الناقص في الكود اني اضيف عدادين

1. (comparison) واحد يحسب كم مره صارت مقارنه بين الاعداد الموجوده في ال array

.(swap2) والاخر يقوم بحساب عدد المرات اللي حصل فيها swap اي بمعنى اخر تغيير في موقع العدد

طبعا الكود بيقوم بترتيب الاعداد بناء على قيمها

كمثال لو عندنا الارقام التاليه : 1,3,2,6,4 من الشمال الى اليمين عندها سيقوم البرنامج بمقارنة اللعدد في الموقع الاول اي الرقم 1 مع العدد في الموقع الثاني وهو 3 , عندها يزيد عداد comparison بمقدار واحد ونلاحظ ايضا ان العدد 1 اكبر من 3 فمعناها ان الرقمين الى الان سيظلوا في اماكنهم من غير تغيير اي بمعنى اخر ان عداد ال comparison سيساوي 1 بينما عداد ال swap ستظل قيمته 0 لانه لم يحصل اي تغيير بين الارقام الى الان

اتمنى تكون الفكره وضحت

مواضيع مشابهة