Более простой пример:
a = len(alist)-1
while a > 0:
for b in range(0,a):
#compare with the adjacent element
if alist[b]>=alist[b+1]:
#swap both elements
alist[b], alist[b+1] = alist[b+1], alist[b]
a-=1
Это просто принимает элементы от 0 до a (в основном, все несортированные элементы в этом раунде) и сравнивает его со своим соседним элементом и делает обмен, если он больше, чем смежный элемент. В конце раунд последний элемент сортируется, и процесс запускается без него, пока все элементы не будут отсортированы.
Нет необходимости в условии, является ли sort
истинным или нет.
Обратите внимание, что этот алгоритм учитывает положение чисел только при замене, поэтому повторяющиеся числа не будут влиять на него.
PS. Я знаю, что это было очень давно, поскольку этот вопрос был опубликован, но я просто хотел поделиться этой идеей.
Вы всегда можете активировать DirectorySlash для определенного местоположения:
<Location "/en">
DirectorySlash On
FallbackResource /index.php
</Location>
Я не тратил так много времени на эту проблему, но вы хотите прочитать предупреждение об этом в ссылка выше. Или вы можете использовать альтернативное решение:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/en$
RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L]
Если проблемы с относительными URL-адресами для изображений и т. Д., Попробуйте добавить в заголовок страницы следующее:
<head>
<base href="/" />
<head>
Перезапустите apache, чтобы изменения вступают в силу. Если используется WordPress, обратите внимание на порядок выполнения. Все правила перенаправления должны быть расположены до правил маршрутизации. Правила WordPress направляют все в index.php.
Чтобы все URL имели косую черту.
Приведенное ниже правило переадресует https://myurl.com/en
в https://myurl.com/en/
с косой чертой в конце.
https://myurl.com/ru - https://myurl.com/en/
blockquote>[1115 ] Установка конечной косой черты для всех ваших URL-адресов в вашем доменном имени.
RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*)$ https://myurl.com/$1/ [L,R=301]
Приведенное ниже правило применимо только для определенного сегмента URL:
RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^en$ /en/ [R=301,NC,L]
Очистить кеш браузера
[ 1113] После внесения каких-либо изменений в файл.htaccess
необходимо очистить кэш браузера перед повторной попыткой или открыть его в новом режиме просмотра в режиме инкогнито, чтобы проверить свои изменения, большинство современных браузеров обычно кэшируют веб-страницу, поэтому вы не можете увидеть действие, если вы не очистили кеш браузера.