java打印出一个菱形

article/2025/10/1 5:28:54

题目

用键盘读入一个字符,然后在屏幕上显示一个用这个字符填充的对角线长5个字符,倾斜放置的菱形。

输入描述:

输入一个char类型字符

输出描述:

输出一个用这个字符填充的对角线长5个字符,倾斜放置的菱形

示例1

输入:
/ #
输出:
在这里插入图片描述

思路

将菱形分为上下两个部分,控制行,然后分别打印空格和符号。

代码
import java.util.Scanner;
public class Main{public static void main(String[] args){Scanner sc = new Scanner(System.in);char in = sc.next().charAt(0);//上部分的行数,包括对角线int n = 3;//循环输出前半部分for(int i = 1 ; i <= n; i++){//输出每行前面的空格,并逐级减少,第一行两个,第二行一个,第三行0个for(int j = 1; j <= n - i; j++){System.out.print(" ");}//每行输出的字符个数是改行的2倍健1,2*i-1for(int j = 1; j <= 2 * i - 1;j++){System.out.print(in);}//每行的结尾要换行System.out.println();}//循环输出后半部分int m = n - 1;//后半部分的行数是前半部分行数减1,m=2for(int i = 1; i <= m; i++){//i=1时,是第四行,打印1个空格,3个字符//i=2时,是第五行,打印0个空格,1字符个//输出空格for(int j = 1; j <= i; j++){System.out.print(" ");}for(int j = 1; j <= 2*(m-i)+1 ; j++){System.out.print(in);}System.out.println();}}
}

运行时间:34ms
占用内存:10884KB


http://chatgpt.dhexx.cn/article/1cPqke7a.shtml

相关文章

java;打印菱形

本文讲述如何用Java打印一个菱形&#xff0c;以及打印直角和等腰三角形的方法&#xff0c; 本文教程比较详细&#xff0c;如果想要直接学习菱形可以直接翻到本文最下方&#xff01;&#xff01;&#xff01; 左下角三角形 &#xff08;这里说的方位均是对应矩形来说&#xff09…

拓扑排序算法详解(通俗且详细)

数据结构第9章图——拓扑排序 … … …

【C语言】拓扑排序算法

文章目录 AOV网拓扑排序算法实现步骤代码实现 AOV网 在一个工程的有向图中&#xff0c;用顶点表示活动&#xff0c;用弧表示活动之间的优先关系&#xff0c;这样的有向图为顶点表示活动的网&#xff0c;我们称为AOV网&#xff08;Activity on Vertex Network&#xff09;。AOV…

图论算法-拓扑排序:专题

是什么 有向图中&#xff0c;对所有的节点进行排序&#xff0c;要求没有一个节点指向它前面的节点。 怎么做 步骤 遍历到所有入度为0的节点&#xff0c;加入队列&#xff1b;如果没有这样的点&#xff0c;说明有向图构成环&#xff0c;则该图无解&#xff0c;结束算法找到与…

基于DFS的拓扑排序算法实现

对于有向无环图G中的任意结点u,v,它们之间的关系必然是以下三种之一&#xff1a; &#xff08;1&#xff09;假设结点u是结点v的祖先&#xff0c;则在调用DFS访问u的过程中&#xff0c;必然会在这个过程结束之前递归地对v调用DFS访问&#xff0c;即v的DFS函数结束时间现语u的D…

【排序算法】排序算法-拓扑排序

拓扑排序 相关概念AOV网拓扑排序 实现思路实现过程 代码测试测试类测试样例 相关概念 AOV网 一项大的工程常被分为多个小的子工程 子工程之间可能存在一定的先后顺序&#xff0c;即某些子工程必须在其他的一些子工程完成后才能开始 在现代化管理中,人们常用有向图来描述和分析…

算法提升:图的拓扑排序算法

目录 概念 思路 代码 概念 拓扑序列&#xff1a;一些活动&#xff0c;其中某些活动必须在另一些活动完成之后才能开始&#xff0c;一定是无环的有向图&#xff0c;称为AOV网。 拓扑排序&#xff0c;其实就是对一个有向图构造拓扑序列的过程。构造时会有两个结果&#xff1a…

leetcode-拓扑排序算法

拓扑排序原理 拓扑排序算法分析&#xff08;通俗易懂&#xff09;_hongjie_lin-CSDN博客_拓扑排序算法 207 课程表 bfs和dfs都可以。先来看一下bfs。 思路是&#xff1a;入度法&#xff0c;入度为0的时候&#xff0c;表示这门课程没有先修课程了&#xff0c;可以学习这门课程了…

2022.3.24 图论——拓扑排序算法

文章目录 一、拓扑排序简介二、例题1.题目2.分析3.代码 一、拓扑排序简介 1.Topological Sorting&#xff0c;指的是一个DAG(Directed Acyclic Graph)即有向图所有顶点满足一定条件的线性序列。 拓扑序列应满足两个条件&#xff1a; 每个点都只出现一次 如果存在一条从A指向B…

数据结构——图——拓扑排序算法

数据结构——图——拓扑排序算法 对AOV网进行拓扑排序的基本思路是:从AOV网中选择一个入度为0的顶点输出&#xff0c;然后删去此顶点&#xff0c;并删除以此顶点为尾的弧&#xff0c;继续重复此步骤&#xff0c;直到输出全部顶点或者AOV 网中不存在入度为0的顶点为止。 首先我…

拓扑排序详解(包含算法原理图解、算法实现过程详解、算法例题变式全面讲解等)

前置知识 有向无环图 在图论中&#xff0c;如果一个有向图无法从某个顶点出发经过若干条边回到该点&#xff0c;则这个图是一个有向无环图&#xff08;DAG图&#xff09;。 如图所示。 入度 对于一个有向图&#xff0c;若x点指向y点&#xff0c;则称x点为y点的入度。 出度…

拓扑排序算法分析(通俗易懂)

拓扑排序&#xff08;其实是一种依赖关系&#xff09;&#xff1a;对于有向且无环的图来说&#xff0c;当前这个节点的依赖来其之前已经完成了。 下面附上一个图让大伙更好的理解&#xff1a; 比如这个图&#xff1a;B需要依赖A才能完成&#xff0c;A需要依赖C和D才能完成&…

拓扑排序算法详讲

经过一天的专研,终于明白了拓扑排序算法,写篇博客记录一下心得. 一.拓扑排序介绍 在一个表示工程的有向图中,用顶点表示活动,用弧表示活动之间的优先关系,这样的有向图为顶点表示活动的网,我们称为AOV网. 设G(V,E)是一个具有n个顶点的有向图,v中的顶点序列v1,v2…,vn,满足若从…

C++ 拓扑排序算法

拓扑排序 有向无环图 如果一个有向图的任意顶点都无法通过一些有向边回到自身&#xff0c;那么称这个有向图为有向无环图。 拓扑排序 拓扑排序是将有向无环图G的所有顶点排成一个线性序列&#xff0c;使得对图G中的任意两个顶点u、v&#xff0c;如果存在边u->v&#xff0c;那…

拓扑排序

拓扑排序 一、拓扑排序的定义&#xff1a; 先引用一段百度百科上对于拓扑排序的定义&#xff1a; 对一个有向无环图 ( Directed Acyclic Graph 简称 DAG ) G 进行拓扑排序&#xff0c;是将 G 中所有顶点排成一个线性序列&#xff0c;使得图中任意一对顶点 u 和 v &#xff0c…

拓扑排序算法

拓扑排序介绍 拓扑排序(Topological Order)是指&#xff0c;将一个有向无环图(Directed Acyclic Graph简称DAG)进行排序进而得到一个有序的线性序列。 这样说&#xff0c;可能理解起来比较抽象。下面通过简单的例子进行说明&#xff01; 例如&#xff0c;一个项目包括A、B、C…

经典算法之拓扑排序

定义&#xff1a; 把AOV网&#xff08;用定点表示活动&#xff0c;用弧表示活动间优先关系的有向图&#xff09;络中各个顶点按照它们互相之间的优先关系排列成一个线性序列的过程叫做拓扑排序。 方法&#xff1a; 在有向图中选一个没有前驱的顶点并且输出从图中删除该顶点和…

拓扑排序(topological sorting)介绍及Python实现

目录 1. 拓扑排序 2. 拓扑排序存在的前提 3. 拓扑排序的唯一性问题 4. 拓扑排序算法原理 4.1 广度优先遍历 4.2 深度优先遍历 5. 代码实现 5.1 Graph类的实现 5.2 广度优先搜索 5.3 深度优先搜索简易版&#xff08;无loop检测&#xff09; 5.4 深度优先搜索完整版 …

【算法】拓扑排序

今天学习拓扑排序。如果一个有向图的任意顶点都无法通过一些有向边回到自身&#xff0c;那么称这个有向图为有向无环图&#xff08;Directed Acyclic Graph&#xff0c;DAG&#xff09;。拓扑排序就是将有向无环图的所有顶点排序&#xff0c;使得图中任意两个点 u、v&#xff0…

拓扑排序及算法实现

一、拓扑排序概念 对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序&#xff0c;是将G中所有顶点排成一个线性序列&#xff0c;使得图中任意一对顶点u和v&#xff0c;若边<u,v>∈E(G)&#xff0c;则u在线性序列中出现在v之前。通常&#xff0c;这样的线性…