折纸折痕问题
题目描述:
将一张纸连续对折n次,从上到下依次打印折痕的类型(分为凹凸两个类型)
解析:
* 对于第1次对折会在中间出现一个凹折痕迹
* 对于之后次数的对折,会在上一次折合的上方出现一个凹折痕,下方出现一个凸折痕
*
* 所以可以把该模型转换为二叉树:
* 在每棵树的左子树加上凹折痕,右子树加上凸折痕,中序遍历即可得到结果
代码:
1 public static void printProcess(int N) { 2 process(1,N,true); 3 } 4 5 public static void process(int i,int N,boolean down) { 6 if (i > N) {//超过树的层数 7 return; 8 } 9 process(i + 1,N,true); 10 System.out.print(down == true ? "凹":"凸"); 11 process(i + 1,N,false); 12 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探