Member 13616463 Ответов: 1

Как можно оптимизировать эту программу сортировки вставки в один связанный список ?


{

Node i , j ;
Node key = start ;  

int k = size ;

for ( int p=1 ; p<=size ; p++ )
{
Node start1 = start ;
  
    if( p!=1 ) 
    {
        key = key.getNextNode() ; 
    }

int kk = 0;

j = key ;  
       
i = new Node ( key.data ) ;
for ( int c = p-1 ; c>=1  ; c--   )
{
start1 = start ; 
    
while ( start1.getNextNode() != j )    
{
    start1 = start1.getNextNode() ;
}
 
if ( start1.getdata() > i.getdata() ) 
{
start1.getNextNode().data = start1.data ;    

j=start1 ;
kk++ ;
}

else 
{
break;
}

}
  
if (kk!=0)
j.data = i.data ;


}

Что я уже пробовал:

Я реализовал сортировку вставки в одном связанном списке . Как эта программа может быть улучшена дальше с точки зрения пространства и строк кода ?

Richard MacCutchan

Конечно, его можно было бы улучшить с помощью правильного отступа.

1 Ответов

Рейтинг:
1

Patrice T

Научитесь правильно делать отступы в вашем коде, это покажет его структуру, и это поможет чтению и пониманию. Это также помогает выявлять структурные ошибки.

{

  Node i , j ;
  Node key = start ;

  int k = size ;

  for ( int p=1 ; p<=size ; p++ )
  {
    Node start1 = start ;

    if( p!=1 )
    {
      key = key.getNextNode() ;
    }

    int kk = 0;

    j = key ;

    i = new Node ( key.data ) ;
    for ( int c = p-1 ; c>=1  ; c--   )
    {
      start1 = start ;

      while ( start1.getNextNode() != j )
      {
        start1 = start1.getNextNode() ;
      }

      if ( start1.getdata() > i.getdata() )
      {
        start1.getNextNode().data = start1.data ;

        j=start1 ;
        kk++ ;
      }

      else
      {
        break;
      }

    }

    if (kk!=0)
      j.data = i.data ;

Профессиональные редакторы программистов имеют эту функцию и другие, такие как сопоставление скобок и подсветка синтаксиса.
Блокнот++ Главная Страница[^]
личные[^]


Richard MacCutchan

Не было бы более разумно отредактировать вопрос для этого?

Patrice T

Привет Ричард,
Я так не думаю, потому что давать советы по правильному изучению кода отступа с помощью вопроса с правильным отступом не имеет смысла.
И с каждым изменением, о котором идет речь, код может быть заменен.
И там можно сравнить эти 2 фрагмента кода.

Member 13616463

сделано

Richard MacCutchan

Насколько я могу судить, нет.