Расстояние редактирования предложения на уровне слова

У меня была та же проблема. Было достаточно отредактировать/etc/X11/Xsession.d/10fglrx

gksu gedit /etc/X11/Xsession.d/10fglrx

при использовании системы на 32 бита, добавляют в конце 4-й строки этот текст: "/usr/lib32/dri /" без кавычек. Файл должен теперь быть похожим на это:

    LIBGL_DRIVERS_PATH=/usr/lib/fglrx/dri 
if [ `uname -m` = 'x86_64' ]; then 
if [ -d /usr/lib32/fglrx/dri ]; then 
LIBGL_DRIVERS_PATH=${LIBGL_DRIVERS_PATH}:/usr/lib32/fglrx/dri:/usr/lib32/dri
if [ ! -z $LD_LIBRARY_PATH ]; then 
LD_LIBRARY_PATH=$LD_LIBRARY_PATH: 
fi 
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/lib32 
export LD_LIBRARY_PATH 
fi 
fi 
export LIBGL_DRIVERS_PATH

, Если Вы используете систему на 64 бита, добавляют в конце 4-й строки этот текст: "/usr/lib/x86_64-linux-gnu/dri /" без кавычек. Файл должен теперь быть похожим на это:

LIBGL_DRIVERS_PATH=/usr/lib/fglrx/dri 
if [ `uname -m` = 'x86_64' ]; then 
if [ -d /usr/lib32/fglrx/dri ]; then 
LIBGL_DRIVERS_PATH=${LIBGL_DRIVERS_PATH}:/usr/lib32/fglrx/dri:/usr/lib/x86_64-linux-gnu/dri
if [ ! -z $LD_LIBRARY_PATH ]; then 
LD_LIBRARY_PATH=$LD_LIBRARY_PATH: 
fi 
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/lib32
export LD_LIBRARY_PATH 
fi 
fi 
export LIBGL_DRIVERS_PATH

Теперь сохранили файл.

Перезагружают Ваш компьютер для наблюдения изменений, он должен загрузиться с дискретной картой. Решение от ubuntuforums.org Взгляд ШАГ 2

16
задан templatetypedef 23 November 2012 в 19:50
поделиться

1 ответ

Вот реализация Java алгоритма расстояния редактирования для предложений с помощью подхода динамического программирования.

public class EditDistance {

    public int editDistanceDP(String sentence1, String sentence2) {
        String[] s1 = sentence1.split(" ");
        String[] s2 = sentence2.split(" ");
        int[][] solution = new int[s1.length + 1][s2.length + 1];

        for (int i = 0; i <= s2.length; i++) {
            solution[0][i] = i;
        }

        for (int i = 0; i <= s1.length; i++) {
            solution[i][0] = i;
        }

        int m = s1.length;
        int n = s2.length;
        for (int i = 1; i <= m; i++) {
            for (int j = 1; j <= n; j++) {
                if (s1[i - 1].equals(s2[j - 1]))
                    solution[i][j] = solution[i - 1][j - 1];
                else
                    solution[i][j] = 1
                            + Math.min(solution[i][j - 1], Math.min(solution[i - 1][j], solution[i - 1][j - 1]));
            }
        }
        return solution[s1.length][s2.length];
    }

    public static void main(String[] args) {
        String sentence1 = "first second third";
        String sentence2 = "second";
        EditDistance ed = new EditDistance();
        System.out.println("Edit Distance: " + ed.editDistanceDP(sentence1, sentence2));
    }
}
0
ответ дан 30 November 2019 в 22:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: