Write a generic TypeScript function that will use a binary search to find the index of the first item in an array for which a partition callback returns true or return -1 otherwise.
system
Escreva uma função genérica de digitação que use uma pesquisa binária para encontrar o índice do primeiro item em uma matriz para a qual um retorno de chamada de partição retorna true ou retorna -1 de outra forma.
user
Aqui está uma função TypeScript que usa uma pesquisa binária para encontrar o índice do primeiro item para o qual um retorno de chamada de partição retorna true:

Função de exportação BinaryFindPartition <T> (
    Array: readonly t [],
    Partição: (Item: T) => Booleano
): número {
    if (Array.Length === 0) {
        retornar -1;
    }
    deixe baixo = 0, alta = array.length - 1;
    while (alto> baixo) {
        const MID = baixo + math.floor ((alto - baixo) / 2);
        if (partition (matriz [mid])) {
            alto = médio;
        } outro {
            baixo = médio + 1;
        }
    }

    Partição de retorno (Array [Low])?baixo: -1;
}
assistant
<|system|>
</s>
<|user|>
Escreva uma função genérica de digitação que use uma pesquisa binária para encontrar o índice do primeiro item em uma matriz para a qual um retorno de chamada de partição retorna true ou retorna -1 de outra forma.</s>
<|assistant|>
Aqui está uma função TypeScript que usa uma pesquisa binária para encontrar o índice do primeiro item para o qual um retorno de chamada de partição retorna true:

Função de exportação BinaryFindPartition <T> (
    Array: readonly t [],
    Partição: (Item: T) => Booleano
): número {
    if (Array.Length === 0) {
        retornar -1;
    }
    deixe baixo = 0, alta = array.length - 1;
    while (alto> baixo) {
        const MID = baixo + math.floor ((alto - baixo) / 2);
        if (partition (matriz [mid])) {
            alto = médio;
        } outro {
            baixo = médio + 1;
        }
    }

    Partição de retorno (Array [Low])?baixo: -1;
}</s>
