Solution
We can use loops to solve the problem. We took two loops, one for the row and the next for the columns. We also took the control variable to control the design butterfly pattern. We also checked the printing condition. If an inner loop of the row is less than or equal to the control variable or the inner loop is more significant than the control difference, it will print the start. Otherwise, it will print a gap. It will also check for the condition if the outer loop is less than or equal to half of the row size. It will increment the control variable. Otherwise, it will decrease the count of the control variable.
Input Format
The first line of the input contains the row size of the Pattern, while the other variables controlled variable inner loop and outer loop counter variable.
Output Format
We are printing the pattern in the shape of a butterfly.
Example
import java.util.Scanner;
public class ButterflyStarPattern {
public static void main(String[] args) {
Scanner cs=new Scanner(System.in);
int out,in;
int row_size=5;
int print_control_x=1;
for(out=1;out<=row_size;out++)
{
for(in=1;in<=row_size;in++)
{
if(in<=print_control_x || in>=row_size-print_control_x+1)
{
System.out.printf("*");
}
else
{
System.out.printf(" ");
}
}
if(out<=row_size/2)
print_control_x++;
else
print_control_x--;
System.out.println();
}
cs.close();
}
}

You can also try this code with Online Java Compiler
Run Code
Output

Here, we have printed the butterfly shape pattern.
Complexity Analysis
Time Complexity: O(N2)
Space Complexity: O(N)
Frequently Asked Questions
What is Pattern shape programming?
Shape Pattern is type programming where we draw the shapes which are repeated over and over again. This Pattern follows a particular order which makes it easier to follow.
What is the structural pattern in Java?
Structural design patterns simplify the design of large object structures by obtaining the relationship between them.
What are the different types of design patterns in Java?
These are creational, structural, and behavioral design patterns in Java.
Conclusion
In this article, we have learned to make the Butterfly shape pattern with the help of stars. We have briefly introduced the topic. We also have explained the problem statement and how we will approach the solution. We also demonstrated the working of loops step by step. We took an example regarding the problem of printing the shape. We were able to print the Pattern successfully.
Recommended Readings:
Do check out The Interview guide for Product Based Companies as well as some of the Popular Interview Problems from Top companies like Amazon, Adobe, Google, etc. on Coding Ninjas Studio.
Also check out some of the Guided Paths on topics such as Interview Puzzles, Data Structure and Algorithms, Competitive Programming, Operating Systems, Computer Networks, DBMS, System Design, etc. as well as some Contests, Test Series, Interview Bundles, and some Interview Experiences curated by top Industry Experts only on Coding Ninjas Studio.