当前位置: 首页>>代码示例>>C++>>正文


C++ print_tree函数代码示例

本文整理汇总了C++中print_tree函数的典型用法代码示例。如果您正苦于以下问题:C++ print_tree函数的具体用法?C++ print_tree怎么用?C++ print_tree使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了print_tree函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: print_tree

void print_tree (tree_node* parent) {
	if((parent-> left_child)) {
		print_tree(parent-> left_child);
	}
	if((parent-> right_child)) {
		print_tree(parent-> right_child);
	}
	if(parent->points) {
		int size = parent->points->size;
		int* points =  parent->points->point_ids;
		for(int i =0; i < size; i++) {
			printf("%d \n", *(points + i));
		}
	}
}
开发者ID:caomw,项目名称:kd-trees,代码行数:15,代码来源:build_tree.cpp

示例2: print_tree

void print_tree(Node* tree, int tabs){
	/* Tulostaa puurakenteen käänteisessä sisäjärjestyksessä. Puurakenne muodostuu
	tulostamalla sopiva määrä sisennysmerkkejä ennen jokaista avainarvoa. Parametri 
	tabs pitää sisällään sisennysmerkkien lukumäärän */
	int i = tabs;
	if (tree){
		print_tree(tree->ptrRight, tabs + 1);
		while (i>0){
			printf("\t");
			i--;
		}
		printf("%d(%d)\n", tree->key, tree->height);
		print_tree(tree->ptrLeft, tabs + 1);
	}
}
开发者ID:joelsalminen,项目名称:AVL-tree,代码行数:15,代码来源:bst.c

示例3: print_tree

void print_tree(node *tree)
{

    printf("\nnumofcubes %d\n",tree->num_of_cubes);
    if(tree->type==0) printf("max\n");
    else printf("min\n");

    printf("score: %d\n\n",tree->score);
    if(tree->num_of_cubes<=0)
        return;
    print_tree((tree)->left);
    print_tree((tree)->right);


}
开发者ID:PanMig,项目名称:MinMax-algorithm-Game,代码行数:15,代码来源:main.c

示例4: print_tree

static void print_tree(tree t, int depth, int column)
{
	int laenge;

	if (NULL == t) 
		return;

	laenge = t->end - t->start;

	printf("%-*d <%-*.*s> (%d..%d)\n", 2 + column, depth, 
			laenge, laenge, t->start, t->from, t->to);

	print_tree(t->child, depth + 1, column + laenge);
	print_tree(t->next, depth, column);
}
开发者ID:uecker,项目名称:toys,代码行数:15,代码来源:baum.c

示例5: main

int main(void) {
    tree s = prompt_tree();
    printf("s = ");
    print_tree(s);
    tree t = prompt_tree();
    printf("t = ");
    print_tree(t);
    tree r = baz(s, t);
    printf("baz(s, t) = ");
    print_tree(r);
    free_tree(r);
    free_tree(s);
    free_tree(t);
    return 0;
}
开发者ID:sebschrader,项目名称:aud-ws201516,代码行数:15,代码来源:test-baz.c

示例6: print_tree

static void
print_tree (GNode *node, gint depth)
{
	GNode    *n;
	FakeNode *file;
	gint      i;

	for (i = 0; i < depth; i++) {
		g_print ("  ");
	}

	n = node;
	while (n) {
		file = n->data;
	
		g_print ("%s\n", file->name);

		if (file->directory) {
			print_tree (n->children, depth + 1);
		} else {
			g_print ("[%s]\n", file->content);
		}

		n = n->next;
	}
}
开发者ID:Ninja-1,项目名称:Circle2,代码行数:26,代码来源:circle-method.c

示例7: add_fake_node

static FakeNode *
add_fake_node (GnomeVFSURI *uri, gboolean directory)
{
	GnomeVFSURI *parent_uri;
	FakeNode    *parent_file;
	const gchar *path, *name;
	FakeNode    *file;

	parent_uri = gnome_vfs_uri_get_parent (uri);
	parent_file = get_fake_node_from_uri (parent_uri);

	if (!parent_file) {
		return NULL;
	}
	
	path = gnome_vfs_uri_get_path (uri);
	name = strrchr (path, '/') + 1;

	g_print ("ADD FAKE: %s, dir: %d\n", name, directory);
	
	file = fake_node_new (name, NULL);

	file->gnode = g_node_append_data (parent_file->gnode, file);
	file->directory = directory;

	print_tree (root, 0);

	return file;
}
开发者ID:Ninja-1,项目名称:Circle2,代码行数:29,代码来源:circle-method.c

示例8: main

int main ()
{
	short flag = 11;							/// flag for menu
	leaf *root;									/// root of tree

	root = new leaf;
	root->parent = NULL;						/// totaly null root of tree
	root->son_l = NULL;							
	root->son_r = NULL;							
	root->val = NULL;							

	while(1)
	{
		switch (give_mFlag())					/// give flag
		{
		case 1: 
			create_tree(root);					/// create tree
			printf("\n....tree was created");
			break;
		case 2:
			print_tree(root);					/// print tree
			break;
		case 0:
			delete_tree(root);					/// destroy tree 
			printf("\n....tree was destroied"); 
			flag = EXIT_WHILE;					/// and exit from programm
			break;
		}
		if (flag == EXIT_WHILE) break;
	}

	getchar();
	getchar();
}
开发者ID:KateLiliy,项目名称:Laba4,代码行数:34,代码来源:tree.cpp

示例9: main

/* program execution begins here
 *
 */
int main(int argc, char* argv[]) {
    if( argc != 2 ) {
        fprintf(stderr, "ERROR: useage is ./ticker FILENAME\n");
        return -1;
    }
    struct tree* tree, *tempC = NULL, *tempT = malloc(sizeof(struct tree));
    if (!tempT) {
        fprintf(stderr, "ERROR: could not allocate space.\n");
        return -1;
    }
    memset(tempT, 0, sizeof(struct tree));
    tree = read_file(argv[1]);
    if (!tree) { // allocation or read failed somehow
        return -1;
    }
    user_input(tree);
    while( (tempC = pop_tree(tree)) && tempC != tree) {
        tree_insert(tempT, tempC->data, check_value);
        free(tempC);
    }
    tree_insert(tempT, tree->data, check_value);
    print_tree(tempT);
    free(tree);
    tree_destroy(tempT);

}
开发者ID:bartmnz,项目名称:ticker,代码行数:29,代码来源:ticker.c

示例10: main

int main(int argc, char *argv[])
{
	struct block_device *bldev;
	FatVol vol;
	FatFile file;
	char *rootpath = argc > 2 ? argv[2] : "/";

	bldev = block_device_file_new(argc > 1 ? argv[1] : "fat32.img", "r+");
	assert(bldev != NULL);

	assert(fat_vol_init(bldev, &vol) == 0);
	fprintf(stderr, "Fat type is FAT%d\n", vol.type);

	fat_mkdir(&vol, "Directory1");
	fat_mkdir(&vol, "Directory2");
	fat_mkdir(&vol, "Directory3");
	assert(fat_chdir(&vol, "Directory1") == 0);
	fat_mkdir(&vol, "Directory1");
	fat_mkdir(&vol, "Directory2");
	fat_mkdir(&vol, "Directory3");
	if(fat_create(&vol, "Message file with a long name.txt", O_WRONLY, &file) == 0) {
		for(int i = 0; i < 100; i++) {
			char message[80];
			sprintf(message, "Here is a message %d\n", i);
			assert(fat_write(&file, message, strlen(message)) == (int)strlen(message));
		}
	}
	assert(fat_chdir(&vol, "..") == 0);
	assert(fat_open(&vol, ".", O_RDONLY, &file) == 0);
	print_tree(&vol, &file, rootpath[0] == '/' ? rootpath + 1 : rootpath);

	block_device_file_destroy(bldev);
}
开发者ID:MikrySoft,项目名称:openfat,代码行数:33,代码来源:fattest.c

示例11: main

int main(int argc, char *argv[])
{
        pid_t pid;
	int status;
	struct tree_node *root;

        if (argc != 2) {
                fprintf(stderr, "Usage: %s <input_tree_file>\n\n", argv[0]);
                exit(1);
        }

        root = get_tree_from_file(argv[1]);
        print_tree(root);

	pid=fork();
	if(pid<0){
		perror("main: fork");
		exit(1);
	}
	else if(pid==0){
		fork_procs(root);
		exit(1);
	}
		
	wait_for_ready_children(1);
	show_pstree(pid);
	kill(pid,SIGCONT);
        pid=wait(&status);
	explain_wait_status(pid,status);

	return 0;
}
开发者ID:dimosr,项目名称:Operating_Systems,代码行数:32,代码来源:part1_3.c

示例12: get_log

void HuffmanEncoder::encode(dict d)
{
	ofstream out;
	out.open((path + ".ashf").c_str());

	vector < Code > word_concat;
	for (int i = 0; i < d.size(); i++)
	{
		if (d[i].c.q == -1 || d[i].c.r == -1)
			continue;
		word_concat.push_back(d[i].c);
	}

	// coding of min(i1, i2)
	vector < string > r_s;
	int k = 0;
	for (int i = 0; i < word_concat.size(); i++)
	{
		int q_log = get_log(word_concat[i].q);
		string kemp = "";
		for (int i = 0; i <= q_log; i++)
		{
			kemp += (1 << i) & word_concat[i].r ? "1" : "0";
		}
		reverse(kemp.begin(), kemp.end());
		r_s.push_back(kemp);

		int r = word_concat[i].q;
		word_concat[i].q -= k;
		k = r;
	}

	root = build_tree(word_concat);
	get_codes(root);
	print_tree(root);

	string long_string = "";
	int q = 0;
	for (int i = 0; i < word_concat.size(); i++)
	{
		string tempor = get_code(word_concat[i].q) + r_s[i] + (word_concat[i].d == true ? "1" : "0");
		long_string = long_string + tempor;
	}

	int l_str_size = long_string.size();
	int cur_p = 0;
	while (cur_p < l_str_size)
	{
		unsigned char c = 0;
		for (int i = 0; i < min(8, l_str_size - cur_p); i++)
		{
			int t = long_string[i + cur_p] == '0' ? 0 : 1;
			c += (t << i);
		}
		cur_p += 8;
		out << c;
	}

	out.close();
}
开发者ID:IsachenkoV,项目名称:ArchAssembly,代码行数:60,代码来源:HuffmanEncoder.cpp

示例13: main

int main () {
	setlocale( LC_ALL,"Russian" );
	tree *t = NULL;
	char h;
	char searching[20];
	int flag;
	printf("Введите кол-во спортсенов: ");
	scanf("%d", &flag);
	do {
	   printf("Введите имя спортсмена: ");
	   scanf("%s", zappin.name);
	   printf("Введите вид спорта: ");
	   scanf("%s", zappin.sport);
	   printf("Введите кол-во очков: ");
	   scanf("%d", &zappin.score);
	   printf("\n");
	   add(t, zappin);
	   flag--;
	} while (flag);
	system("cls");
	print_tree(t);
			// Поиск
             
             printf("Для поиска спортсмена введите фамилию: ");
	         scanf("%s", searching);
	         search(t, searching);
	getch();
	return 0;
}
开发者ID:Alexey-Nikulin,项目名称:lab_prog,代码行数:29,代码来源:test+2.cpp

示例14: main

int main(int argc, char** argv) {
    if(argc <= 1) return 1;
    FILE *f = fopen(argv[1], "r");
    if (!f) {
        perror(argv[1]);
        return 1;
    }
    FILE *fp = stdout;
    if(argc == 3) {
        fp = fopen(argv[2], "w");
    }

    yyrestart(f);
#if YYDEBUG
    yydebug = 1;
#endif
    yyparse();
    if(!err) {
#ifdef DEBUG
        print_tree(root);
#endif
        main_parse(root);
        //print_code(&code, stdout);
        init_mips(fp);
        gen_mips(&code, fp);
    }
    return 0;
}
开发者ID:ArkBriar,项目名称:NJU-Compiler,代码行数:28,代码来源:main.c

示例15: main

int main(int argc, char** argv)
{
   if (argc > 2)
      if (strcmp(argv[1], "-d") == 0) {
         debug = 1;
         debug_file = fopen(argv[2], "w");
      }

   char namestring[MAXNAME];

   printf("what will you define?\n");

   fgets(namestring, MAXNAME, stdin);
   *(strchr(namestring, '\n')) = '\0';

   struct node* root = setup_tree(namestring);

   if (debug)
      print_tree(root);

   printf("total cost for %s is %.2f\n", namestring, calculate_cost(root, 1));

   free_tree(root);

   if (debug)
      fclose(debug_file);

   return 0;
}
开发者ID:tjarjoura,项目名称:parts-inventory,代码行数:29,代码来源:parts_inventory.c


注:本文中的print_tree函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。