• 0
سامي راتب

البحث في Hashtabel

سؤال

السلام عليكم و رحمة الله ،،،

اخواني اريد بعض المساعده منكم رجاءً

في عندي مشكله في البحث في Hashtabel

الموضوع اني بدي أبحث عن قيمه معينه و أحصل على المفتاح

على سبيل المثال :


weeks.Add("1", "SunDay");
weeks.Add("2", "MonDay");
weeks.Add("3", "TueDay");
weeks.Add("4", "WedDay");
weeks.Add("5", "ThuDay");
weeks.Add("6", "FriDay");
weeks.Add("7", "SatDay");
Hashtable weeks = new Hashtable();

اذا كان لدينا هذا الكود و انا أرت أن أجد مفتاح الذي تؤشر عليه القيمه الاثنين مثلا

weeks(MonDay) to get the key >> 2

أنا جربت فنكشن التالي


{
HT = new Hashtable();
string myKey = "";

foreach (string aKey in HT.Keys)
{
if (HT.ContainsValue(aKey).ToString() == myValue)
myKey = aKey;
else myKey = "No such that";
}
return myKey;
public string FindKey(Hashtable HT, string myValue)// Function to get key from Value search

بس المشكله انو دائما برجعلي قيمه فارغه

رجااااء لمن يعلم طريقه مساعدتي

انتظر ردكك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

3 إجابة على هذا السؤال .

  • 0

و عليكم السلام و رحمة الله ،

تعديل بسيط و تنفذ البرنامج لدي





class Program
{
public static string FindKey(Hashtable HT, string myValue)// Function to get key from Value search
{
string myKey = "";

foreach (string aKey in HT.Keys)
{
if (HT[aKey].ToString()== myValue)
myKey = aKey;
}

if(myKey=="")
myKey = "No such that";

return myKey;
}
static void Main(string[] args)
{
Hashtable weeks = new Hashtable();
weeks.Add("1", "SunDay");
weeks.Add("2", "MonDay");
weeks.Add("3", "TueDay");
weeks.Add("4", "WedDay");
weeks.Add("5", "ThuDay");
weeks.Add("6", "FriDay");
weeks.Add("7", "SatDay");

Console.WriteLine(FindKey(weeks, "TueDay"));
}
}

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

جزاك الله كل خير أخي و جعله في ميزان حسناتك

شكرا اكتييييييييييييير

على راسي يا كبير ، ان شاء الله نردلك اياها بالأفراح

:cool: :cool: :cool:

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

سلام عليكم

اضافة لكود الاخ الاخير زمانه :



class Program
{
public static string FindKey(Hashtable HT, string myValue)// Function to get key from Value search
{
string myKey = "";

foreach (string aKey in HT.Keys)
{
if (HT[aKey].ToString().ToLower() == myValue.ToLower())
myKey = aKey;
}

if (myKey == "")
myKey = "No such that";

return myKey;
}
static void Main(string[] args)
{
Hashtable weeks = new Hashtable();
weeks.Add("1", "SunDay");
weeks.Add("2", "MonDay");
weeks.Add("3", "TueDay");
weeks.Add("4", "WedDay");
weeks.Add("5", "ThuDay");
weeks.Add("6", "FriDay");
weeks.Add("7", "SatDay");

Console.WriteLine(FindKey(weeks, "TueDay"));
}
}

تم اضافة tolower() و ذلك لان البحث في ال keys حساس للاحرف بحيث اذا كان حرف capital و حرف small فلا يتطابقان

تم تعديل بواسطه robot2030
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .