Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,845 questions

51,766 answers

573 users

How to find the smallest letter in a sorted array that is larger than a given letter in C#

1 Answer

0 votes
using System;

class FindNextLetter
{
    // Function to find the smallest letter greater than the given letter
    static char FindSmallestLetterGreaterThanTarget(char[] letters, char givenLetter) {
        int left = 0;
        int right = letters.Length - 1;
        char result = letters[0]; // Default to the first letter 

        while (left <= right) {
            int mid = left + (right - left) / 2;

            if (letters[mid] > givenLetter) {
                result = letters[mid];
                right = mid - 1; // Narrow down to the left half
            }
            else {
                left = mid + 1; // Narrow down to the right half
            }
        }

        return result;
    }

    static void Main()
    {
        char[] letters = { 'c', 'e', 'k', 'm' };
        char givenLetter = 'd';

        char result = FindSmallestLetterGreaterThanTarget(letters, givenLetter);

        Console.WriteLine($"The smallest letter greater than '{givenLetter}' is: {result}");
    }
}


/*
run:

The smallest letter greater than 'd' is: e

*/

 



answered Sep 21, 2025 by avibootz
edited Sep 21, 2025 by avibootz
...