Lista dynamiczna dwukierunkowa

0

Witam, mam problem z utworzeniem listy dynamicznej dwukierunkowej i utworzenia programu w taki sposób aby wczytywał dane z pliku tekstowego i sortował je w trakcie wykonania programu alfabetycznie <rosnąco>.
Mam program ale działa on na liscie jednokierunkowej :/, nie wiem jak sie do tego zabrać mowiąc szczerze dlatego prosze o pomoc fachowców

 
#include <stdio.h> 
#include <stdlib.h>

int main(){

FILE *inFp;
char inFilename[15];
struct blok{ 
char slowo[15];  
blok *nast; 
}; 
struct blok *wsk,*usuw,*glowa=NULL;

printf("Nazwa pliku z wyrazami...");
gets(inFilename);
 while((inFp = fopen(inFilename, "r"))==NULL){
  printf("Bledna nazwa, wprowadz ja ponownie...\n");
  gets(inFilename);
 }
while (!feof(inFp)){
if (glowa == NULL)
 glowa = wsk = (struct blok*)malloc(sizeof(struct blok));
else{
 wsk->nast = (struct blok*)malloc(sizeof(struct blok));
 wsk = wsk->nast;
}
fscanf(inFp, "%s", wsk->slowo);
printf("%s\n", wsk->slowo);
 wsk->nast = NULL;
}
usuw = glowa;
glowa = usuw->nast;
free(usuw);
while (wsk->nast != NULL){
 wsk = wsk->nast;
 usuw = wsk->nast;
 wsk->nast = wsk->nast->nast;
 free(usuw);
}
}

Z góry dzięki za kazdą pomoc

0

Czy ktokolwiek moze odpisać na ten temat i podzielić sie ze mna swoimi przemysleniami?

0

To pokaż z czym masz problem. Ten twój post można zaliczyć do kategorii:

mam tu hello world:

#include <iostream>
using namespace std;

int main()
  {
   cout<<"hello world"<<endl;
   return 0;
  }

A chcę mieć kod SAP'a proszę pomóżcie.

Mozę trochę przesadziłem ale i tak brzmi bardzo podobnie.

0

Problem jest opisany wyżej, chyba nie można go juz bardziej wyjaśnić:
-głownie chodzi mi o to co moge zrobic aby podany kod programu sortował alfebatycznie pobierane dane z pliku tekstowego.txt
-po drugie jest to program który pracuje na liscie jednokierunkowej, probowałem go przerobic na liste dwukierunkową ale mi nie wychodzi :/

0

ad.1. Wstawiaj nie na koniec lub początek zaś w środek listy w odpowiednim miejscu.
ad.2. Pokaż to co ci nie wyszło to ktoś na pewno ci wskaże gdzie masz błąd.

0

Czym jest SAP?

0

Pomóżcie z tym sortowaniem danych alfabetycznie<rosnąco>. Nie wiem jak sie do tego zabrać, nie mam nawet pomysłu :(

0

Przecież ci powiedziałem:
Wstawiaj nowy węzeł nie na koniec zaś w środek.
Lecisz po liście dopóki nie znajdziesz węzeł u którego przypisane słowo leksykograficznie większe od tego które zamierzasz wstawić, wstawiasz przed znalezionym węzłem. Jeżeli wcześniej doszedłeś do końca listy to wstawiasz na koniec. Ot cała filozofia.

1 użytkowników online, w tym zalogowanych: 0, gości: 1