Maison >类库下载 >C#类库 >二分查找法 C#实现

二分查找法 C#实现

大家讲道理
大家讲道理original
2016-11-10 09:25:412158parcourir

public int FindPosition(int num, int[] arr)  
        {  
            int left = 0;  
            int right = arr.Length - 1;  
   
   
            while (left < right - 1)  
            {  
                if (arr[left] == num)  
                {  
                    return left;  
                }  
                if (arr[right] == num)  
                {  
                    return right;  
                }  
   
   
                int middle = (left + right) / 2;  
                if (num == arr[middle])  
                {  
                    return middle;  
                }  
                else if (num < arr[middle])  
                {  
                    right = middle;  
                }  
                else 
                {  
                    left = middle;  
                }  
   
   
            }  
            return -1;  
        }

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn