Ця стаття спрямована на реалізацію Java для друку шаблонів.
Простий візерунок піраміди
Javaimport java.io.*; // Java code to demonstrate star patterns public class GeeksForGeeks { // Function to demonstrate printing pattern public static void printStars(int n) { int i j; // outer loop to handle number of rows // n in this case for(i=0; i<n; i++) { // inner loop to handle number of columns // values changing acc. to outer loop for(j=0; j<=i; j++) { // printing stars System.out.print('* '); } // ending line after each row System.out.println(); } } // Driver Function public static void main(String args[]) { int n = 5; printStars(n); } }
Вихід
* * * * * * * * * * * * * * *
Часова складність: O(n^2)
Просторова складність: O(1)
Метод: використання циклу while
Java// java program to print simple pyramid pattern using while // loop import java.io.*; class GFG { public static void main(String[] args) { int r = 1 c = 0 n = 5; // the while loop check the conditions until the // condition is false. if it is true then enter in // to loop and execute the statements while (r <= n) { while (c <= r - 1) { // printing the required pattern System.out.print('* '); c++; } r++; c = 0; // new line after each row System.out.println(); } } } // this code is contributed by gangarajula laxmi
Вихід
* * * * * * * * * * * * * * *
Часова складність: O(N^2) Зовнішній цикл while повторюється N разів, а внутрішній цикл N-1. Отже, загальна часова складність програми становитиме O(N2).
Просторова складність: O(1) Додаткове місце не потрібно.
Спосіб №2: Використання рекурсії
Java// Java code to demonstrate star pattern // using Recursion import java.io.*; class GFG { // function to print a row static void printRow(int num) { // base case if (num == 0) return; System.out.print('* '); // recursively calling printRow() printRow(num - 1); } // function to print the pattern static void pattern(int n int i) { // base case if (n == 0) return; printRow(i); System.out.println(); // recursively calling pattern() pattern(n - 1 i + 1); } // Driver code public static void main(String[] args) { int n = 5; pattern(n 1); } } // this code is contributed by Shivesh Kumar Dwivedi
Вихід
* * * * * * * * * * * * * * *
Часова складність: O(N^2)
Допоміжний простір: O(N^2)
Після повороту на 180 градусів
Javaimport java.io.*; // Java code to demonstrate star pattern public class GeeksForGeeks { // Function to demonstrate printing pattern public static void printStars(int n) { int i j; // outer loop to handle number of rows // n in this case for(i=0; i<n; i++) { // inner loop to handle number spaces // values changing acc. to requirement for(j=2*(n-i); j>=0; j--) { // printing spaces System.out.print(' '); } // inner loop to handle number of columns // values changing acc. to outer loop for(j=0; j<=i; j++) { // printing stars System.out.print('* '); } // ending line after each row System.out.println(); } } // Driver Function public static void main(String args[]) { int n = 5; printStars(n); } }
Вихід
* * * * * * * * * * * * * * *
The часова складність програми є O(n^2) оскільки є два вкладені цикли, кожен з яких виконується n разів.
The складність простору є O(1).
Спосіб №3: Використання рекурсії
Java// Java code to demonstrate star pattern //using Recursion import java.util.*; public class GeeksForGeeks { // function to print spaces static void printSpace(int space) { // base case if (space == 0) { return; } System.out.print(' ' + ' '); // recursively calling printSpace() printSpace(space - 1); } // function to print stars static void printStars(int star) { // base case if (star == 0) { return; } System.out.print('* '); // recursively calling printStars() printStars(star - 1); } // function to print the pattern static void pattern(int n int num) { // base case if (n == 0) { return; } printSpace(n - 1); printStars(num - n + 1); System.out.println(); // recursively calling pattern() pattern(n - 1 num); } // Driver code public static void main(String args[]) { int n = 5; pattern(n n); } } //this code is contributed by Shivesh Kumar Dwivedi
Вихід
* * * * * * * * * * * * * * *
Друк трикутника
Javaimport java.io.*; // Java code to demonstrate star pattern public class GeeksForGeeks { // Function to demonstrate printing pattern public static void printTriangle(int n) { // outer loop to handle number of rows // n in this case for (int i=0; i<n; i++) { // inner loop to handle number spaces // values changing acc. to requirement for (int j=n-i; j>1; j--) { // printing spaces System.out.print(' '); } // inner loop to handle number of columns // values changing acc. to outer loop for (int j=0; j<=i; j++ ) { // printing stars System.out.print('* '); } // ending line after each row System.out.println(); } } // Driver Function public static void main(String args[]) { int n = 5; printTriangle(n); } }
Вихід
* * * * * * * * * * * * * * *
Спосіб №4: Використання рекурсії
Java// Java code to demonstrate star pattern // using recursion import java.util.*; public class GeeksForGeeks { // function to print spaces static void printSpace(int space) { // base case if (space == 0) return; System.out.print(' '); // recursively calling printSpace() printSpace(space - 1); } // function to print asterisks static void printStar(int asterisk) { // base case if (asterisk == 0) return; System.out.print('* '); // recursively calling printStar() printStar(asterisk - 1); } // function to print the pattern static void pattern(int n int num) { // base case if (n == 0) return; printSpace(n - 1); printStar(num - n + 1); System.out.println(''); // recursively calling pattern() pattern(n - 1 num); } // Driver code public static void main(String[] args) { int n = 5; pattern(n n); } } // this code is contributed by Shivesh Kumar Dwivedi
Вихід
* * * * * * * * * * * * * * *
Друк реверсу піраміди
Java//MainFunction public class ReversePyramid { public static void main(String[] args) { int rows = 6; // Number of Rows we want to print //Printing the pattern for (int i = 1; i <= rows; i++) { for (int j = 1; j < i; j++) { System.out.print(' '); } for (int j = i; j <= rows; j++) { System.out.print(j+' '); } System.out.println(); } } }
Вихід
1 2 3 4 5 6 2 3 4 5 6 3 4 5 6 4 5 6 5 6 6
Шаблон числа з дзеркальним відображенням
Java//MainFunction public class ReversePattern { public static void main(String[] args) { int rows = 7; // Number of Rows we want to print //Printing the pattern for (int i = 1; i <= rows; i++) { for (int j = 1; j < i; j++) { System.out.print(' '); } for (int j = i; j <= rows; j++) { System.out.print(j+' '); } System.out.println(); } //Printing the reverse pattern for (int i = rows-1; i >= 1; i--) { for (int j = 1; j < i; j++) { System.out.print(' '); } for (int j = i; j <= rows; j++) { System.out.print(j+' '); } System.out.println(); } } }
Вихід
1 2 3 4 5 6 7 2 3 4 5 6 7 3 4 5 6 7 4 5 6 7 5 6 7 6 7 7 6 7 5 6 7 4 5 6 7 3 4 5 6 7 2 3 4 5 6 7 1 2 3 4 5 6 7
Шаблон номера
Javaimport java.io.*; // Java code to demonstrate number pattern public class GeeksForGeeks { // Function to demonstrate printing pattern public static void printNums(int n) { int i jnum; // outer loop to handle number of rows // n in this case for(i=0; i<n; i++) { // initialising starting number num=1; // inner loop to handle number of columns // values changing acc. to outer loop for(j=0; j<=i; j++) { // printing num with a space System.out.print(num+ ' '); //incrementing value of num num++; } // ending line after each row System.out.println(); } } // Driver Function public static void main(String args[]) { int n = 5; printNums(n); } }
Вихід
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Спосіб 5: Використання циклу while
Java// java program to print number pattern using while // loop import java.io.*; class GFG { public static void main(String[] args) { int r = 1 c = 1 n = 5; // the while loop check the conditions until the // condition is false. if it is true then enter in // to loop and execute the statements while (r <= n) { while (c <= r ) { // printing the required pattern System.out.print(c+' '); c++; } r++; c = 1; // new line after each row System.out.println(); } } }
Вихід
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Номери без перепризначення
java hashmapJava
import java.io.*; // Java code to demonstrate star pattern public class GeeksForGeeks { // Function to demonstrate printing pattern public static void printNums(int n) { // initialising starting number int i j num=1; // outer loop to handle number of rows // n in this case for(i=0; i<n; i++) { // without re assigning num // num = 1; for(j=0; j<=i; j++) { // printing num with a space System.out.print(num+ ' '); // incrementing num at each column num = num + 1; } // ending line after each row System.out.println(); } } // Driver Function public static void main(String args[]) { int n = 5; printNums(n); } }
Вихід
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Друк ялинки за допомогою піраміди
Javaclass PrintChristmasTree{ //Value 5 is permanently provided to height variable public static final int height = 5; //Main Function public static void main(String[] args) { //Assigning Width int width = 5; //Assigning Space int space = width*5; int x = 1; //Code to Print Upper Part of the Tree i.e. Pyramids. for(int a = 1;a <= height ;a++){ for(int i = x;i <= width;i++){ for(int j = space;j >= i;j--){ System.out.print(' '); } for(int k = 1;k <= i;k++){ System.out.print('* '); } System.out.println(); } x = x+2; width = width+2; } //Printing Branch of Christmas Tree for(int i = 1;i <= 4;i++){ for(int j = space-3;j >= 1;j--){ System.out.print(' '); } for(int k= 1;k <= 4;k++){ System.out.print('* '); } System.out.println(); } } }
Вихід
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Складність часу: O(h*w*w) для заданої висоти h і ширини w
Допоміжний простір: O(1)