forum.rastrnet.ru  

Вернуться   forum.rastrnet.ru > Компьютеры и всё, что с ними связано > Программируем

 Сообщения за день       Добавить альбом       Поиск      Правила форума  


 
 
Опции темы Опции просмотра
Старый 08.11.2007, 20:06   #11
COBEHOK
Новичок
 
Регистрация: 17.08.2004
Сообщений: 780
Help

Цитата:
Сообщение от REY Посмотреть сообщение
Конечно, и именно по этому в циклах перебора строк ,сказал перебирать элементы, пока значение строки не станет равным ноль символу.
Обрати внимание на строку pStr1[i+j+1]=pStr2[j]; из предыдущего варианта

Цитата:
Сообщение от REY Посмотреть сообщение
Не мог бы ты подсказать, как этот "дерьмовый" алгоритм оптимизировать, дабы исключить "временную сложность" и прочие беды. Если подскажешь, то искреннее тебе спасибо за это.
Это вариант уже лучше. Осталось только убрать последний цикл и вывести итоговую строку за раз. Можно еще перейти с индексов на указатели - мне кажется так код будет понятнее и не нужна арифметика на индексах

Код:
#include <iostream.h>
int main()
{
  cout << "Vvedite pervuiu stroku: \n";
  char szStr1[60]; // здесь динамическая память особо не нужна + 30 символов под вторую строку
  cin.getline(szStr1, 30);

  cout << "Vvedite vtoruiu stroku: \n";
  char szStr2[30];
  cin.getline(szStr2, 30);

  char* pIt1 = szStr2;
  while(*pIt1) ++pIt1; // pIt указывает на завершающий ноль
  
  for(char* pIt2 = szStr2; *pIt2; ++pIt1, ++pIt2)
     *pIt1 = *pIt2;
  *pIt1 = '\0'; // в цикле завершающий ноль не ставится

  cout << "Itogovaia stroka: " << szStr1 << endl;
  return 0;
}
Как-то так
__________________
Одним фломастером можно раскрасить почти все. Двумя - вообще все!
COBEHOK вне форума   Ответить с цитированием
 

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 11:19. Часовой пояс GMT +7.


Powered by vBulletin® Version 3.8.4 Patch Level 5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
Форум открыт в июле 2004 г.
Кошки и котята Красноярска и Сибири Живой Мир Сибири