JavaScript Binary Search / Insertion Preformance

function binarySearch(value)
{
    var startIndex = 0,
        stopIndex = words.length - 1,
        middle = Math.floor((stopIndex + startIndex) / 2);

    while (words[middle] != value && startIndex < stopIndex) {
        // adjust search area
        if (value < words[middle]) {
            stopIndex = middle - 1;
        } else if (value > words[middle]) {
            startIndex = middle + 1;
        }

        // recalculate middle
        middle = Math.floor((stopIndex + startIndex) / 2);
    }
}

Tworzę dużą listę słów w formacie tablicy:

na przykład["a","ab","abc","b"]

W porządku alfabetycznym. Problem, który mam, to modyfikacja mojego algorytmu wyszukiwania binarnego, aby dodać słowo we właściwym miejscu, a następnie zaktualizować?

Jaki jest najlepszy sposób, aby dodać słowo do uporządkowanej tablicy? I dlaczego jest to najlepszy sposób, aby to zrobić?

questionAnswers(2)

yourAnswerToTheQuestion