Advertisement
Guest User

Untitled

a guest
Dec 10th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.17 KB | None | 0 0
  1. // ConsoleApplication39.cpp : Ten plik zawiera funkcję „main”. W nim rozpoczyna się i kończy wykonywanie programu.
  2. //
  3.  
  4. #include "pch.h"
  5. #include <iostream>
  6. using namespace std;
  7.  
  8. // typ wezlow drzewa
  9. struct drzewo
  10. {
  11. drzewo *lewe;
  12. drzewo *prawe;
  13. char dane;
  14. };
  15. // liscie
  16. drzewo G = { NULL,NULL,'G' };
  17. drzewo G = { NULL,NULL,'H' };
  18. drzewo G = { NULL,NULL,'I' };
  19. drzewo G = { NULL,NULL,'J' };
  20. drzewo G = { NULL,NULL,'K' };
  21. //ojcowie
  22. drzewo D = { &H, &I, 'D' };
  23. drzewo D = { &J, NULL, 'E' };
  24. drzewo D = { &K, NULL, 'F' };
  25. drzewo D = { &D, &E, 'B' };
  26. drzewo D = { &F, &G, 'C' };
  27. //korzen drzewa
  28. drzewo A = { &B, &C, 'A' };
  29. //funkcja preorder
  30. /*void preoder(drzewo * cos)
  31. {
  32. if (cos)
  33. {
  34. cout << cos->dane << " "; //odwiedzamy wezel
  35. preoder(cos->lewy);//przechodzimy lewe poddrzewo
  36. preoder(cos->prawy);//przechodzimy prawe poddrzewo
  37. }
  38. }
  39. */
  40.  
  41.  
  42. int main()
  43. {
  44. drzewo * v, *S[7]; //stos
  45. int sptr; //wskaznik stosu
  46.  
  47. S[0] = &A; //wskazanie korzenia na stosie
  48. sptr = 1; // stos zawiera 1 element
  49.  
  50. while(sptr)
  51. {
  52. v = S[--sptr]; //pobieramy ze stosu wskazanie wezla
  53. cout << v->dane << " "; //przetwarzamy wezel
  54. //na stosie umieszczamy wskazania dzieci, jesli istnieja
  55. if (v->prawe) S[sptr++] = v->prawe;
  56. if (v->lewe) S[sptr++] = v->lewe;
  57. };
  58.  
  59. cout << endl;
  60. return 0;
  61. system("pause");
  62. }
  63.  
  64. // Uruchomienie programu: Ctrl + F5 lub menu Debugowanie > Uruchom bez debugowania
  65. // Debugowanie programu: F5 lub menu Debugowanie > Rozpocznij debugowanie
  66.  
  67. // Porady dotyczące rozpoczynania pracy:
  68. // 1. Użyj okna Eksploratora rozwiązań, aby dodać pliki i zarządzać nimi
  69. // 2. Użyj okna programu Team Explorer, aby nawiązać połączenie z kontrolą źródła
  70. // 3. Użyj okna Dane wyjściowe, aby sprawdzić dane wyjściowe kompilacji i inne komunikaty
  71. // 4. Użyj okna Lista błędów, aby zobaczyć błędy
  72. // 5. Wybierz pozycję Projekt > Dodaj nowy element, aby utworzyć nowe pliki kodu, lub wybierz pozycję Projekt > Dodaj istniejący element, aby dodać istniejące pliku kodu do projektu
  73. // 6. Aby w przyszłości ponownie otworzyć ten projekt, przejdź do pozycji Plik > Otwórz > Projekt i wybierz plik sln
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement