面试遇到的算法问题求大佬帮忙

qq_40178387 2018-04-11 11:49:11
1.编写一个函数,输入一个整数,输出如下图所示



2.编写一个函数,计算m*n大小棋盘上门矩形的图案,如下图所示,高和宽相同(图画的不好见谅)



...全文
568 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ftl111 2018-04-14
  • 打赏
  • 举报
回复
public static void main(String[] args) {
// TODO Auto-generated method stub

Scanner scanner=new Scanner(System.in);
System.out.println("请输入中间行的值:");
int n = scanner.nextInt();
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n-i; j++) {
System.out.print("\t");
}
for (int j = 1; j <= i; j++) {
System.out.print(i+"\t\t");
}
System.out.println();
}

for (int i = n - 1; i >= 1; i--) {
for (int j = 1; j <= n-i; j++) {
System.out.print("\t");
}
for (int j = 1; j <= i; j++) {
System.out.print(i+"\t\t");
}
System.out.println();
}
scanner.close();
}



weixin_41368339 2018-04-13
  • 打赏
  • 举报
回复
public static void main(String[] args) { int a = 8; for(int i=1;i<=a;i++){ for(int j=1;j<=i;j++){ System.out.print(i); } System.out.println(); } for(int i=a-1;i>=1;i--){ for(int j=1;j<=i;j++){ System.out.print(i); } System.out.println(); } }
maradona1984 2018-04-12
  • 打赏
  • 举报
回复
第一题要输出好看的图案,得先计算输入的n的位数X(这个将是每个数字占有的位置大小,不足位数的也要补齐,最好放中间,如果是偶数位随便放中间两个的一个位置),然后第j行前面的空格为(n-j)*X,下面部分就反着做一个循环就行了,如果没有特殊要求
ftl111 2018-04-12
  • 打赏
  • 举报
回复
计算****的图案是什么意思?
qq_40178387 2018-04-12
  • 打赏
  • 举报
回复
呃,好像不是杨辉三角形,应该是一个从1递增到n的公式,然后打印菱形,这个公式想了半天
rabbitbug 2018-04-12
  • 打赏
  • 举报
回复
第一个就是两个杨辉三角形啊, 大一时应该大家都要学会打印杨辉三角的吧? 第二个应该是两重循环计算吧, 也可以用递归 递归的话, 第一次m减一, 然后n减一, 当然要分别再继续递归

50,626

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧