C언어/문제풀다 하나씩

링크드리스트에 DFS 넣고 프린트하기

mcdn 2020. 4. 29. 23:26
반응형

#include <iostream>
using namespace std;

struct Node {
	char a;
	Node* left;
	Node* right;
};
char name[15];
Node* head;
Node* last;
void addnode(int num, Node*now) {
	if (num > 7) return;
	if (name[num] == '0') return;
	if (name[num] >='A' && name[num]<='Z')
		cout << name[num];
	if (head == NULL) {
		head = new Node();
		head->a = name[num];
	}
	head->left = new Node();
	head->right = new Node();
	addnode(num * 2, head->left);
	addnode(num * 2+1, head->right);

}

int main() {
	cin >> name;
	for (int i = 5; i >=0;i--) {
		name[i + 1] = name[i];
		if (i == 0) {
			name[0] = 0;
		}
	}
	addnode(1, head);


	return 0;
}

돌아감

넣으면서 바로바로 프린트하게

처음에는 그냥 cout << name[num] 했는데

------ 이런걸 (홈페이지에서)넣어서 오류가 남

그래서 A~Z에 있는거 프린트if문 넣음

 

input : ABCDEF

output : ABDECF

 

반응형