c++删除一个tree

本文探讨了一种代码逻辑的复原方法,特别是在长时间后重新理解并维护复杂代码结构的技巧。通过迭代删除法,从容器中逐个取出元素进行处理,并递归地将子元素加入待处理队列,直至所有元素被处理完毕。该方法适用于多种场景,如树状数据结构的遍历和清理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自己写的代码,过了很久自己忘了原有的逻辑了。 = =、

while(!vec_delete_clumn.empty()) // 如果容器不为空
{
	iterTree = m_map_tree_info.find(vec_delete_clumn[0]);
	for(int32_t i = 0; i < iterTree->second->m_vec_child_id.size(); i++) // 将vec的第一个元素的子栏目ID加入vec
	{
		vec_delete_clumn.push_back(iterTree->second->m_vec_child_id[i]);
	}
	int32_t nRetCode = deleteOneColumn(vec_delete_clumn[0]); // 每次删除vec首元素
	
	if(nRetCode != MYSUCESS)
	{
		response.resp_json["code"]		=	MYERROR;
		response.resp_json["message"] 	= 	"Defeat";
		return MYERROR;
	}

	iterVecColumn = vec_delete_clumn.begin();
	vec_delete_clumn.erase(iterVecColumn);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值