powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / конкатенация строки в одну переменную
10 сообщений из 60, страница 3 из 3
конкатенация строки в одну переменную
    #39482838
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилmayton,

что это даст сообществу?
Пока не знаю. Я просто предложил свой "поток сознания". Жду реакции. В скобках замечу
что в этом форуме я - альтруист и вообще не преследую никаких оценок из серии что будет
полезно или безполезно для науки и народного хозяйства.

На альтруизме также базируется мое модерирование и вообще присутствие здесь.
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39482875
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)CEMbMS у CString сделало копированием просто адреса строки, O(1) Ну и они как-то там следят за изменением обеих "копий", да. мы вроде бы о сложении персистентных строк говоримты выдёргиваешь меня из своего же контекста. Вопрос (твой) был про невозможность копирования O(1), я на него и ответил

Изопропилчто это даст сообществу?
есть задачи, где надо много работать со строками. А потом, это хорошая академическая задача, если её решить, мы получим неплохой скилл в оптимизации работы с большими данными.
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39482922
Sergey_rb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonSergey_rbпропущено...


Да, начните таки думать о том, что давно уже сделано другими!
Милостивый государь! Я думаю что ваше восклицание требует определённых пояснений.
Что имелось в виду?
Какими "другими" ?

авторЯзык Паскаль был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, складывающую два числа.

https://ru.wikipedia.org/wiki/Паскаль_(язык_программирования)
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39482929
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey_rbmaytonпропущено...

Милостивый государь! Я думаю что ваше восклицание требует определённых пояснений.
Что имелось в виду?
Какими "другими" ?

авторЯзык Паскаль был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, складывающую два числа.

https://ru.wikipedia.org/wiki/Паскаль_(язык_программирования)
Я понял. В беседе со мной вы выбрали механизм цитат и ссылок. Вы решили что будете очень убедительны
если будете ссылаться на общеизвестные факты наподобие "Волга впадает в Каспийское море"... e.t.c.

А вы поняли ЗАЧЕМ я предлагаю создать еще одну имплементацию строки?
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39482935
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyА в чем проблема-то?
Код: plaintext
1.
2.
std::string s = "текст";
s=s + " еще текст" + " еще текст результат от парсинга" + std::to_string(123);

Можно еще через конструктор копии:
Код: plaintext
1.
std::string s = std::string("текст") + " еще текст" + " еще текст результат от парсинга" + std::to_string(123);
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39482967
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonkealon(Ruslan)пропущено...

придётся как-то сделать без операции копирования, которая и даёт O(len(A)+len(B))
но даже c rope (верёвкой) будет логарифм
Большое спасибо Руслан что вы напомнили мне о такой замечательной структуре данных как Rope(DataStructure).
Лежит в списке на прочтение. Но думаю что в данной задаче мы пока начнем что-то решать без верёвки.
Оставим на десерт когда все простые решения будут исчерпаны. Я верю что R/B-tree, hashmap, и LRU нас
спасали последние лет 50 в информатике и вычислительной технике и сейчас спасут.
верёвка - то же бинарное дерево, к нему так же можно применять балансировку из RB, AVL, DT и пр., просто сортировочного ключа нет

CEMbkealon(Ruslan)пропущено...
мы вроде бы о сложении персистентных строк говоримты выдёргиваешь меня из своего же контекста. Вопрос (твой) был про невозможность копирования O(1), я на него и ответил
там вопрос был про создать строку из двух, а для этого в лобовом случае надо выделить место на результат и скопировать из двух источников
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39482994
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выделить место на стеке - одна операция процессора.
Скопировать строку - с учетом всяких AVX - по 64 байта за две операции.

Сколько тактов это занимает - лень смотреть, но с учетом того, что процессоры Гигагерцовые - это, напоминаю миллиарды тактов в секунду.

Больше задержек с обращением к разным участкам памяти, чем к собиранию в одну строку.

P.S. Паскаль не позволяет приплюсовать число к строке.
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39483003
Sergey_rb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglP.S. Паскаль не позволяет приплюсовать число к строке.

?????
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39483047
Charles Weyland
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот только sptintf лучше не использовать, если это не лаба на зачётную неделю.

_snprintf_s
...
Рейтинг: 0 / 0
конкатенация строки в одну переменную
    #39483092
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)там вопрос был про создать строку из двух, а для этого в лобовом случае надо выделить место на результат и скопировать из двух источниковда, но если взять строку, которая поддерживает фрагментацию, плюс механизм от MS, позволяющий разделять ресурсы (строку) между объектами(CString), то создать строку из двух и скопировать в третью получается O(1)

Sergey_rb?????нас или троллят, или человек действительно не понимает, в чём суть и проблема?
...
Рейтинг: 0 / 0
10 сообщений из 60, страница 3 из 3
Форумы / C++ [игнор отключен] [закрыт для гостей] / конкатенация строки в одну переменную
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]