Advertisement
Guest User

Untitled

a guest
Oct 24th, 2016
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <vector>
  4.  
  5. #define GRAPH_SIZE 5
  6.  
  7. using namespace std;
  8.  
  9. struct Node{
  10. int Name;
  11. int value;
  12. bool check_status;
  13. vector<Node*> links;
  14. };
  15.  
  16. Node nodes[GRAPH_SIZE];
  17.  
  18. void custom (void){
  19. system ("color 0A");
  20. system ("title graph sort");
  21. return;
  22. }
  23.  
  24. vector<int> graph_sorter (void){
  25. vector<int> index;
  26. vector<int> graph_array;
  27. bool flag;
  28. int in,buf;
  29. for (int k = 0;k < GRAPH_SIZE;k++){
  30. buf = 2147483647;
  31. for (int i = 0;i < GRAPH_SIZE;i++){
  32. flag = true;
  33. for (int j = 0;j < index.size();j++)
  34. if (index[j] == i) flag = false;
  35. if (flag){
  36. if (nodes[i].value < buf){
  37. buf = nodes[i].value;
  38. in = i;
  39. }
  40. }
  41. }
  42. index.push_back(in);
  43. graph_array.push_back(buf);
  44. }
  45. return graph_array;
  46. }
  47.  
  48. int main(){
  49. custom();
  50.  
  51. for (int i = 0;i < GRAPH_SIZE;i++){
  52. nodes[i].check_status = false;
  53. nodes[i].Name = i;
  54. }
  55.  
  56. nodes[0].value = 3;
  57. nodes[1].value = 1;
  58. nodes[2].value = 5;
  59. nodes[3].value = 7;
  60. nodes[4].value = 2;
  61.  
  62. nodes[0].links.push_back(&nodes[1]);
  63. nodes[0].links.push_back(&nodes[2]);
  64.  
  65. nodes[1].links.push_back(&nodes[0]);
  66.  
  67. nodes[2].links.push_back(&nodes[0]);
  68. nodes[2].links.push_back(&nodes[3]);
  69. nodes[2].links.push_back(&nodes[4]);
  70.  
  71. nodes[3].links.push_back(&nodes[2]);
  72.  
  73. nodes[4].links.push_back(&nodes[2]);
  74.  
  75. vector<int> graph_array = graph_sorter();
  76. for (int i = 0;i < graph_array.size();i++)
  77. cout<<graph_array[i]<<" ";
  78.  
  79. return 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement