Jump to content
  • 0

sort


iillyyaa2
 Share

Question

подскажите как проще сделать, есть строка "abcdababebbacd" мне нужно найти все уникальные символы и расположить их в порядке как часто они встречаются

что бы вышло "bacde"

на пхп всё просто сортируется, а тут...

допустим я сделал объект

ar['a']=4;

ar['b']=5;

ar['c']=2;

ar['d']=2;

ar['e']=1;

как его отсортировать?

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

подскажите как проще сделать, есть строка "abcdababebbacd" мне нужно найти все уникальные символы и расположить их в порядке как часто они встречаются

что бы вышло "bacde"

на пхп всё просто сортируется, а тут...

допустим я сделал объект

ar['a']=4;

ar['b']=5;

ar['c']=2;

ar['d']=2;

ar['e']=1;

как его отсортировать?

1. Что понимается под "уникальными символами"

2. Не объект, а массив

3. Отсортировать массив по убыванию\возрастанию можно с помощью функции sort. В гугле забанены ? http://www.weblabla.ru/examples/javascript/jsref_sort3.html

Link to comment
Share on other sites

  • 0

str_split()

array_unique()

ссори, не углядел в каком разделе находится тема )))


var text="abcdababebbacd";
var arr = text.split("");
//Убедимся в правильном разбиении...
for (var i=0,len=arr.length;i<len;i++) {
alert(arr[i]);
}


function sort_unique(arr) {
arr = arr.sort(function (a, B) { return a*1 - b*1; });
var ret = [arr[0]];
for (var i = 1; i < arr.length; i++) { // start loop at 1 as element 0 can never be a duplicate
if (arr[i-1] !== arr[i]) {
ret.push(arr[i]);
}
}
return ret;
}

Link to comment
Share on other sites

  • 0
ссори, не углядел в каком разделе находится тема )))

сейчас начинаю присматриваться к php. Зачем НАСТОЛЬКО много функций понаделали мне не понятно. Видимо, для того, чтобы запутать. Или ... есть большой мешок с "много_всего". Что в мешке, ты не видишь. Суешь в него руку, роешься и ... достаешь (сколько ухватишь) охапку. Чем больше похожих функций, тем больше вероятность, что ухватишь нужное :) С другой стороны, они могут запросто раствориться в общей массе.

Veseloff, на первый взгляд перемудрили. Есть основной объект. Создаем еще один для идентификации совпадений и массив в кот. складываем найденное. Итого: 1 цикл по объекту.

Edited by nerv
Link to comment
Share on other sites

  • 0

[offtopic]

Зачем НАСТОЛЬКО много функций понаделали мне не понятно.
Их понаделали для скорости выполнения скрипта, все эти функции написаны на си, они априори быстрее ваших собственных функций.

Но кто вам мешает ими просто не пользоваться? Пишите свои функции.

По мне так выражение "зачем столько функций у php" ровносильно выражению "зачем земля такая большая, я ведь использую только 10 соток"

[/offtopic]

Edited by deadrash
Link to comment
Share on other sites

  • 0

Возможно сейчас это почти так. Ещё не так давно это было не так. Некоторые самописные функции работали быстрее чем встроенные (например, некоторая сериализация) А такое обилие функций может замедлять интерпритатор — например, в Python надо делать import, если что-то надо, а в PHP всё в одном месте, что не всегда идёт на пользу скорострельности.

Link to comment
Share on other sites

  • 0
Пишите свои функции

вы меня не поняли. Я про функции "близнецы".

Я к тому, что мало = плохо, много - плохо. Нужна золотая середина. Если у кого то возникли специфич. потребности,

делать import
. Пока больше похоже на свалку функций. Мне, например, не понятно, почему не распределить их по пространствам имен, раз уж разработчикам захотелось иметь их все и сразу. Edited by nerv
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy