tag:blogger.com,1999:blog-74011883441725700232024-03-21T15:09:38.574-07:00JAVAITBLOGAbout Java programming, Spring boot, Spring Framework, Hibernate, Java Script, oAuth2, Node.js, PL/SQL and MySQLVikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.comBlogger71125tag:blogger.com,1999:blog-7401188344172570023.post-70858604482412876892023-06-26T08:56:00.006-07:002023-06-26T08:57:22.612-07:00Difference between internal working of HashMap in JAVA 7 And JAVA 8<p><span style="background-color: #f5f5f6; color: #2a3140; font-size: 12px;">In both Java 7 and Java 8, the </span><span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span><span style="background-color: #f5f5f6; color: #2a3140; font-size: 12px;"> class is used to store key-value pairs. However, there are some differences in the internal working of </span><span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span><span style="background-color: #f5f5f6; color: #2a3140; font-size: 12px;"> between these two versions.</span></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">In Java 7, the internal structure of a <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span> consists of an array of linked lists, where each array index represents a bucket. The hash code of the key is used to determine the bucket where the key-value pair will be stored. If multiple key-value pairs map to the same bucket, they are stored as nodes in a linked list at that bucket. This mechanism is known as separate chaining.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Let's consider an example to illustrate this. Suppose we have a <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span> in Java 7 with four buckets and the following key-value pairs:</p><p class="p2" style="background-color: #272832; color: #d0d0dc; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 9px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><br /></p><p class="p5" style="background-color: black; color: #14986a; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s2" style="color: #e2830e;">Key</span><span class="s3" style="color: white;">: </span>"Apple"<span class="s3" style="color: white;"> -> </span><span class="s2" style="color: #e2830e;">Value</span><span class="s3" style="color: white;">: </span>"Red"<span class="s3" style="color: white;"> </span><span class="s2" style="color: #e2830e;">Key</span><span class="s3" style="color: white;">: </span>"Banana"<span class="s3" style="color: white;"> -> </span><span class="s2" style="color: #e2830e;">Value</span><span class="s3" style="color: white;">: </span>"Yellow"<span class="s3" style="color: white;"> </span><span class="s2" style="color: #e2830e;">Key</span><span class="s3" style="color: white;">: </span>"Grape"<span class="s3" style="color: white;"> -> </span><span class="s2" style="color: #e2830e;">Value</span><span class="s3" style="color: white;">: </span>"Purple"</p><p class="p5" style="background-color: black; color: #14986a; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The hash code of each key is computed, and based on that, the corresponding bucket is determined. In this example, let's assume that the hash codes are as follows:</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span> in Java 7 would internally look like this</p><p class="p4" style="background-color: #272832; color: #d0d0dc; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><br /></p><p class="p6" style="background-color: black; color: white; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">Bucket <span class="s5" style="color: #d41466;">0</span>: Bucket <span class="s5" style="color: #d41466;">1</span>: Bucket <span class="s5" style="color: #d41466;">2</span>: Bucket <span class="s5" style="color: #d41466;">3</span>: (<span class="s4" style="color: #14986a;">"Apple"</span> -> <span class="s4" style="color: #14986a;">"Red"</span>) -> (<span class="s4" style="color: #14986a;">"Grape"</span> -> <span class="s4" style="color: #14986a;">"Purple"</span>) Bucket <span class="s5" style="color: #d41466;">4</span>: Bucket <span class="s5" style="color: #d41466;">5</span>: Bucket <span class="s5" style="color: #d41466;">6</span>: Bucket <span class="s5" style="color: #d41466;">7</span>: (<span class="s4" style="color: #14986a;">"Banana"</span> -> <span class="s4" style="color: #14986a;">"Yellow"</span>)</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">When retrieving a value from the <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span> in Java 7, the hash code of the key is used to find the bucket. Then, the linked list at that bucket is traversed to find the matching key-value pair.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">In Java 8, the <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span> class introduced a new mechanism called tree bins to handle situations where a bucket contains a large number of colliding entries. When a bucket exceeds a certain threshold, it converts into a balanced binary tree instead of using a linked list. This structure, known as a red-black tree, allows for more efficient searching and retrieval of key-value pairs.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Continuing with the previous example, if we add more key-value pairs to the <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span></p><p class="p3" style="background-color: white; color: #d0d0dc; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 14px; text-align: center;"><br /></p><p class="p5" style="background-color: black; color: #14986a; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s2" style="color: #e2830e;">Key</span><span class="s3" style="color: white;">: </span>"Lemon"<span class="s3" style="color: white;"> -> </span><span class="s2" style="color: #e2830e;">Value</span><span class="s3" style="color: white;">: </span>"Yellow"<span class="s3" style="color: white;"> </span><span class="s2" style="color: #e2830e;">Key</span><span class="s3" style="color: white;">: </span>"Orange"<span class="s3" style="color: white;"> -> </span><span class="s2" style="color: #e2830e;">Value</span><span class="s3" style="color: white;">: </span>"Orange"<span class="s3" style="color: white;"> </span><span class="s2" style="color: #e2830e;">Key</span><span class="s3" style="color: white;">: </span>"Cherry"<span class="s3" style="color: white;"> -> </span><span class="s2" style="color: #e2830e;">Value</span><span class="s3" style="color: white;">: </span>"Red"</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span> in Java 8 would internally look like this:</p><p class="p2" style="background-color: #272832; color: #d0d0dc; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 9px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><br /></p><p class="p6" style="background-color: black; color: white; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">Bucket <span class="s5" style="color: #d41466;">0</span>: Bucket <span class="s5" style="color: #d41466;">1</span>: Bucket <span class="s5" style="color: #d41466;">2</span>: Bucket <span class="s5" style="color: #d41466;">3</span>: (<span class="s4" style="color: #14986a;">"Apple"</span> -> <span class="s4" style="color: #14986a;">"Red"</span>) -> (<span class="s4" style="color: #14986a;">"Grape"</span> -> <span class="s4" style="color: #14986a;">"Purple"</span>) Bucket <span class="s5" style="color: #d41466;">4</span>: Bucket <span class="s5" style="color: #d41466;">5</span>: Bucket <span class="s5" style="color: #d41466;">6</span>: Bucket <span class="s5" style="color: #d41466;">7</span>: (<span class="s4" style="color: #14986a;">"Banana"</span> -> <span class="s4" style="color: #14986a;">"Yellow"</span>) Bucket <span class="s5" style="color: #d41466;">8</span>: (<span class="s4" style="color: #14986a;">"Cherry"</span> -> <span class="s4" style="color: #14986a;">"Red"</span>) -> (<span class="s4" style="color: #14986a;">"Lemon"</span> -> <span class="s4" style="color: #14986a;">"Yellow"</span>) -> (<span class="s4" style="color: #14986a;">"Orange"</span> -> <span class="s4" style="color: #14986a;">"Orange"</span>)</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">As you can see, the bucket that initially contained three key-value pairs ("Cherry", "Lemon", and "Orange") has been transformed into a red-black tree, making it more efficient to search for specific keys within that bucket.</p><p class="p7" style="background-color: #f5f5f6; color: #2a3140; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">When retrieving a value from the <span class="s1" style="color: #0e121d; font-family: Monaco; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;">HashMap</span> in Java 8, the hash code of the key is used to find the bucket. If the bucket is a linked list, the key-value pairs are compared using their hash codes and, if necessary, their actual values to find the match. If the bucket is a red-black tree, a binary search is performed</p><p class="p8" style="background-color: white; color: #9c9bb0; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-15008409681290754632023-06-25T11:15:00.001-07:002023-06-25T11:16:17.722-07:00Stateless vs Stateful web services<p><span style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-size: 16px;">Stateless and stateful web services are two architectural paradigms for designing and implementing web services. The main difference between them lies in how they handle and manage client session information.</span></p><p><span style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-size: 16px;"></span></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEh9d7_KwRjf6lRqz_XWLb-WztMGqoakqMcmp-E3lJeiXUOPi4S4fPDRKvVcAD7uFFUFvLXtSs9ajdsWAuOO3ESNP_NtuE3DPltmbj2xnBHOVVltSbJiOzqcQW4iarNVO05iA3RhO3PIfLMSduZcsui5jmtZNmUYB1IXTmESfNMqAAkZy_IULX-bsoKRQnE" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="346" data-original-width="706" height="157" src="https://blogger.googleusercontent.com/img/a/AVvXsEh9d7_KwRjf6lRqz_XWLb-WztMGqoakqMcmp-E3lJeiXUOPi4S4fPDRKvVcAD7uFFUFvLXtSs9ajdsWAuOO3ESNP_NtuE3DPltmbj2xnBHOVVltSbJiOzqcQW4iarNVO05iA3RhO3PIfLMSduZcsui5jmtZNmUYB1IXTmESfNMqAAkZy_IULX-bsoKRQnE" width="320" /></a></div><br /><br /><p></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;"><b>Stateless Web Services:</b></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;">Stateless web services do not maintain any session or context information about the client between multiple requests. Each request is treated independently, and the server does not retain any knowledge of previous requests from the same client.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;">Characteristics of Stateless Web Services:</p><ul class="ul1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">No session information is stored on the server.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Each request is self-contained and independent.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Scalability is generally better since there is no need to manage and synchronize session state.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Suitable for scenarios where requests can be handled in isolation, without relying on past interactions.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Stateless services are generally easier to implement and test.</span></li></ul><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;">Example: RESTful APIs are commonly designed as stateless web services. In a RESTful API, each request from the client contains all the necessary information for the server to process it. The server does not maintain any session state. The client includes any required authentication tokens or data in the request headers, allowing the server to authenticate and process the request without relying on previous interactions.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;"><b>Stateful Web Services:</b></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;">Stateful web services maintain session or context information about the client across multiple requests. The server keeps track of the client's state and uses it to handle subsequent requests from the same client. Session information is typically stored on the server or in a shared session store.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;">Characteristics of Stateful Web Services:</p><ul class="ul1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Session information is stored on the server.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Server maintains state information for each client, allowing it to provide personalized services.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Clients are associated with a session identifier or token to retrieve their session data.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">More complex to implement and maintain due to managing and synchronizing session state.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Can be beneficial in scenarios where maintaining state information is necessary, such as shopping carts, user authentication, and multi-step processes.</span></li></ul><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 20px;">Example: An e-commerce website that allows users to add items to a shopping cart is an example of a stateful web service. The server stores the user's shopping cart information, and the user can perform multiple operations, such as adding or removing items, within the same session. The server retrieves and updates the session data with each request to provide a consistent shopping experience.</p><p class="p3" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">In summary, the choice between stateless and stateful web services depends on the requirements of the application. Stateless services are simpler, scalable, and suitable for scenarios where requests can be handled independently. Stateful services, on the other hand, provide more personalized and persistent interactions but require additional management of session state.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-75112057556154910832023-06-24T10:22:00.005-07:002023-06-24T10:23:30.291-07:00What are the terminal and intermediate operations in java streams?<p> <span style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-size: 12px;">In Java streams, intermediate and terminal operations are the two main types of operations that can be performed on a stream.</span></p><ol class="ol1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Intermediate Operations:</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Intermediate operations are operations that are applied to a stream and produce a new stream as a result. These operations are typically used for transforming, filtering, or sorting the elements of a stream. Intermediate operations are lazy, meaning they are not executed until a terminal operation is invoked on the stream.</span></li></ol><div><span style="color: #2a3140; font-family: Helvetica;"><span style="font-size: 12px;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgMQQvKYwrZnvcGV70tzBz7S0q2hE6kvvQ32JZ-lIc7SVKlG6k0gaFCI3m4ZppDQVVw7bWXabKNfGWS3TRJMU07viQW0PCeC0u8ofIQW7qJ9oTB0OI0z6ym6_0nr7yYrrkdwtKTcKUrlX_ovCOAlWMenMgJGqi9JtSuJrY8Bkl341_WdvXWIw0MZHsHQa8" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="762" data-original-width="456" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEgMQQvKYwrZnvcGV70tzBz7S0q2hE6kvvQ32JZ-lIc7SVKlG6k0gaFCI3m4ZppDQVVw7bWXabKNfGWS3TRJMU07viQW0PCeC0u8ofIQW7qJ9oTB0OI0z6ym6_0nr7yYrrkdwtKTcKUrlX_ovCOAlWMenMgJGqi9JtSuJrY8Bkl341_WdvXWIw0MZHsHQa8=w198-h240" width="198" /></a></div><br /><br /></span></span></div><div><span style="color: #2a3140; font-family: Helvetica;"><span style="font-size: 12px;"><br /></span></span></div><div><span style="color: #2a3140; font-family: Helvetica;"><span style="font-size: 12px;"><br /></span></span></div><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Some common intermediate operations in Java streams include:</p><ul class="ul1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">map: Applies a function to each element and transforms it into another type.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">filter: Filters out elements based on a specified condition.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">sorted: Sorts the elements of the stream based on a comparator.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">distinct: Removes duplicate elements from the stream.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">limit: Limits the number of elements in the stream to a specified size.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">flatMap: Transforms each element into a stream and flattens the result.</span></li></ul><ol class="ol1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Terminal Operations:</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Terminal operations are operations that are applied to a stream and produce a non-stream result, such as a value, a collection, or a side effect. When a terminal operation is invoked, the intermediate operations are executed on the stream elements to produce the final result.</span></li></ol><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Some common terminal operations in Java streams include:</p><ul class="ul1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">forEach: Performs an action on each element of the stream.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">collect: Collects the elements of the stream into a collection or a single value.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">reduce: Combines the elements of the stream into a single value using a specified operation.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">count: Returns the count of elements in the stream.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">anyMatch, allMatch, noneMatch: Check if any, all, or none of the elements satisfy a given condition.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">min, max: Returns the minimum or maximum element of the stream based on a comparator.</span></li></ul><p class="p3" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">It's important to note that a stream pipeline typically consists of a sequence of intermediate operations followed by a terminal operation. The intermediate operations are executed in a lazy manner, only when the terminal operation is triggered. This lazy evaluation allows for optimized and efficient processing of large data sets.</p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p5" style="background-color: white; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 12px;"><br /></p><p class="p6" style="background-color: white; color: #31313e; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 12px; text-align: center;"><br /></p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-89402919001039490362023-06-23T11:04:00.003-07:002023-06-23T11:05:02.533-07:00What is count min sketch algorithm ?<p> <span style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-size: 12px;">The Count-Min Sketch algorithm is a probabilistic data structure used for estimating the frequency of elements in a stream of data. It was introduced by Cormode and Muthukrishnan in 2005 as a memory-efficient and scalable approach to approximate counting.</span></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The Count-Min Sketch consists of a two-dimensional array of counters, typically implemented as an array of hash tables. Each hash table corresponds to a different hash function. When an element is encountered in the stream, it is hashed multiple times using different hash functions, and the corresponding counters in the hash tables are incremented.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjQpyfK9sN8gBdxcNMlSJPwcCkR-JBhyY1pHgnFr9zCpkZ0DCHNIAA6LTUJxIdIDY4GaxzZ9T2VcfJC-3eIelKmFvzgszvNB8FKmcYXVy5fOjQYS3XJKSjoLVHGuV5BI2pV7z5RurJ3GX5OV_oiBgD6uLiGpV6aUQ7nlKg9g9GlOBnXUJjDcP9EysQ9ITI" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="1378" data-original-width="1612" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEjQpyfK9sN8gBdxcNMlSJPwcCkR-JBhyY1pHgnFr9zCpkZ0DCHNIAA6LTUJxIdIDY4GaxzZ9T2VcfJC-3eIelKmFvzgszvNB8FKmcYXVy5fOjQYS3XJKSjoLVHGuV5BI2pV7z5RurJ3GX5OV_oiBgD6uLiGpV6aUQ7nlKg9g9GlOBnXUJjDcP9EysQ9ITI" width="281" /></a></div><br /><br /><p></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"><br /></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Here's a high-level overview of the Count-Min Sketch algorithm:</p><ol class="ol1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Initialization: Create a two-dimensional array of counters with dimensions width x depth, initially set to zero.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Hashing: Choose a set of k hash functions, each mapping elements to one of the counters in the array.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Incrementing: When an element is encountered in the stream, hash it using each of the k hash functions. Increment the corresponding counters in the array for each hash function.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Estimation: To estimate the frequency of an element, hash it using the same set of k hash functions. Retrieve the minimum value among the counters associated with the hashed positions.</span></li></ol><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The Count-Min Sketch provides an approximation of element frequencies in the stream. It guarantees that the estimated frequency is always greater than or equal to the actual frequency. However, due to collisions and limited counter sizes, there is a probability of overestimation. The accuracy of the estimation depends on the width and depth of the sketch.</p><p class="p3" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">Count-Min Sketches are particularly useful when memory usage is a concern or when processing large-scale data streams. They are commonly employed in areas such as network traffic monitoring, approximate query processing, frequency analysis, and streaming algorithms.</p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p5" style="background-color: white; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 12px;"><br /></p><p class="p6" style="background-color: white; color: #31313e; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 12px; text-align: center;"><br /></p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-11229819113684166752023-06-22T10:54:00.001-07:002023-06-22T10:56:55.734-07:00What is Rsync algorithm?<p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The Rsync algorithm is a file synchronization and transfer algorithm that efficiently detects and transfers the differences between two files or directories. It was developed by Andrew Tridgell and Paul Mackerras in 1996.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiq8epwipAZHwsNlj3e161ngK3kAm48WwvvRTLCvh2e2jNmZRL4l4fTRPIAUjLhxZS0-oTLSik9_MmydG-maaSSQQEI28HBoGyjKOJx9BBo4a4kyI6BqJZ_FKiDMQb7Zz5Qq9iCUpKhqEQtO9M7US2duJisb32iznUq5vnWaS7g1DEjnUdtVqE42FIwbbg" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="2048" data-original-width="2048" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEiq8epwipAZHwsNlj3e161ngK3kAm48WwvvRTLCvh2e2jNmZRL4l4fTRPIAUjLhxZS0-oTLSik9_MmydG-maaSSQQEI28HBoGyjKOJx9BBo4a4kyI6BqJZ_FKiDMQb7Zz5Qq9iCUpKhqEQtO9M7US2duJisb32iznUq5vnWaS7g1DEjnUdtVqE42FIwbbg" width="240" /></a></div><br /><br /><p></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"><br /></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The key idea behind the Rsync algorithm is the concept of delta encoding. Instead of transferring an entire file, Rsync identifies the portions of the file that have changed and transfers only those differences (called deltas). This makes the algorithm particularly efficient when transferring large files or synchronizing files over a network.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjQy8ohgy4BPB4xB8cdilisF1Q81PSWRVugKgXxOXseJdOZOH4L_QC5c9aBtCATYWEA50uxoKL8ZOM2f2ktmLmRStL5-VYN8RAkuPtW2WLasHjwNwwg85N1W_CPvbPuUipw2W0Dh6fSyNBVqeubcTLtDFiYrQ2cA7egA6trZtU0wq7oopZPHulJ40Rf-98" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="2048" data-original-width="2048" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEjQy8ohgy4BPB4xB8cdilisF1Q81PSWRVugKgXxOXseJdOZOH4L_QC5c9aBtCATYWEA50uxoKL8ZOM2f2ktmLmRStL5-VYN8RAkuPtW2WLasHjwNwwg85N1W_CPvbPuUipw2W0Dh6fSyNBVqeubcTLtDFiYrQ2cA7egA6trZtU0wq7oopZPHulJ40Rf-98" width="240" /></a></div><br /><br /><p></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"><br /></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The Rsync algorithm operates in two phases: the sender and the receiver.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Sender Phase:</p><ol class="ol1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">The sender breaks the source file into fixed-size blocks (typically 2KB or 4KB) and calculates a rolling checksum for each block. The rolling checksum is a hash function that produces a fixed-size checksum for each block based on its content.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">The sender sends the list of checksums along with the corresponding block positions to the receiver.</span></li></ol><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Receiver Phase:</p><ol class="ol1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">The receiver compares the checksums received from the sender with the checksums of the blocks in the destination file.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">If a checksum match is found, it means that the block is already present in the destination file, and the receiver skips it.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">If a checksum mismatch occurs, the receiver identifies the differing blocks and requests the sender to transmit only those blocks.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">The sender sends the requested blocks, and the receiver integrates them into the destination file, reconstructing the updated file.</span></li></ol><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">This process continues until the receiver has synchronized the entire file or directory with the sender.</p><p class="p3" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">The Rsync algorithm's efficiency lies in its ability to minimize the amount of data transmitted by transferring only the differences between files. This makes it an excellent choice for efficient file synchronization, remote backups, and network transfers with limited bandwidth.</p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p5" style="background-color: white; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 12px;"><br /></p><p class="p6" style="background-color: white; color: #31313e; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 10.5px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 12px; text-align: center;"><br /></p><p> </p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-68390103486536638602023-06-21T10:22:00.003-07:002023-06-21T10:23:38.046-07:00What is GeoHash QuadTree Algorithm and what are its application?<p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Geohash Quadtree is an algorithm used for spatial indexing and efficient representation of geospatial data. It combines the Geohash encoding technique with the Quadtree data structure to divide a two-dimensional geographic space into smaller regions.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgpf38yPIUoYJzXIF7XPrjLh9cm1GQ1xhCC5Nn71uPLmrYFKcmye5O2z-u3akVyRuU3Xdi9qQPxl4HZQCy_11PdKg_SGiPK6sedZPPY8Mw8XXCTaX-YW2ThT5YIi4_PHypUru950xlghSmaWL-F7ZLRoPrxQbR2KvDNDXRf5IXxsfqjjE2GXsV8kUlIAuU" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="2048" data-original-width="2048" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEgpf38yPIUoYJzXIF7XPrjLh9cm1GQ1xhCC5Nn71uPLmrYFKcmye5O2z-u3akVyRuU3Xdi9qQPxl4HZQCy_11PdKg_SGiPK6sedZPPY8Mw8XXCTaX-YW2ThT5YIi4_PHypUru950xlghSmaWL-F7ZLRoPrxQbR2KvDNDXRf5IXxsfqjjE2GXsV8kUlIAuU" width="240" /></a></div><br /><br /><p></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"><br /></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Geohash is a hierarchical spatial data structure that converts a location's latitude and longitude coordinates into a unique string representation. Each character in the Geohash string represents a binary division of the spatial area. By iteratively subdividing the space, more precise locations can be represented with longer Geohash strings.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">A Quadtree is a tree data structure where each internal node has exactly four children, representing four quadrants of a coordinate space. The Quadtree recursively subdivides the space into smaller regions until a desired level of granularity is achieved.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The Geohash Quadtree algorithm combines the Geohash encoding technique with the Quadtree data structure. It uses Geohash strings to determine the region of interest and then traverses the corresponding Quadtree nodes to efficiently retrieve or store geospatial data.</p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhbS1TYBe4kHnF60Ru4pwV_EajYDHzsZwEv0TBaLBkK1-F4oes8nsCM0m4Eo7M9HtvUQKsWejRImJnuvtt3cAdLAWrxpoXkS1GWyt7QfpcqL2qJmeRyUOwEECmIRenlMwCN4-g3KNaKOenLJ1iioLUtso41nziv9oKZmiDZ3nktf1dVg8SXNLxwbDSCjPs" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="2048" data-original-width="2048" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEhbS1TYBe4kHnF60Ru4pwV_EajYDHzsZwEv0TBaLBkK1-F4oes8nsCM0m4Eo7M9HtvUQKsWejRImJnuvtt3cAdLAWrxpoXkS1GWyt7QfpcqL2qJmeRyUOwEECmIRenlMwCN4-g3KNaKOenLJ1iioLUtso41nziv9oKZmiDZ3nktf1dVg8SXNLxwbDSCjPs" width="240" /></a></div><br /><br /><p></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"><br /></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">The Geohash Quadtree algorithm is commonly used in various applications, including:</p><ol class="ol1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Geospatial indexing: It enables efficient storage and retrieval of geospatial data in databases or spatial indexing systems. Geohash Quadtree can speed up spatial queries by reducing the search space to a specific region of interest.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Geolocation services: It is utilized in geolocation services and mapping applications to quickly identify nearby points of interest or perform proximity searches. Geohash Quadtree helps in efficiently filtering and matching locations based on their geohash representations.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Geospatial clustering: It facilitates clustering of geospatial data points based on their proximity. By using the Geohash Quadtree algorithm, nearby data points can be efficiently grouped together, enabling effective spatial analysis and visualization.</span></li></ol><p class="p3" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">Overall, the Geohash Quadtree algorithm provides an effective way to organize, index, and query geospatial data, improving the efficiency and performance of geospatial applications and services.</p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p class="p4" style="background-color: white; color: #9c9bb0; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 16px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 19px; text-align: center;"><br /></p><p> </p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-81648444212833956072023-06-20T09:30:00.001-07:002023-06-20T09:31:08.040-07:00Data Scientist VS Data Analyst<p> <span style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-size: 12px;">Data Scientist and Data Analyst are both roles in the field of data analysis, but they differ in terms of their focus, skill set, and job responsibilities. Here's a comparison of the two roles:</span></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Data Scientist:</p><ul class="ul1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Focus: Data scientists primarily focus on extracting insights and knowledge from large and complex datasets. They apply advanced statistical and mathematical models, as well as machine learning algorithms, to solve complex problems and make predictions.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Skill Set: Data scientists require a strong background in mathematics, statistics, and programming. They should be proficient in programming languages like Python or R, and have knowledge of data manipulation, data visualization, and machine learning techniques.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Job Responsibilities: Data scientists are involved in various tasks, including data collection, cleaning, and preprocessing, exploratory data analysis, feature engineering, building predictive models, and developing algorithms. They often work on complex projects and are responsible for delivering actionable insights and data-driven solutions.</span></li></ul><div><span style="color: #2a3140; font-family: Helvetica;"><span style="font-size: 12px;"><div class="separator" style="clear: both; text-align: center;"><img alt="" data-original-height="2048" data-original-width="2048" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEjfV8dYoZ_qvWZRFuGb3Bsf7WByHnSRL5OCoNmqnCABh2FDu0mGoSYomVC7f3KSg-LojpGutx_SVuZSugMAltZHx7IIC_HTZ0D_BKiaBFFZRP9GMJXN06ITIcoEYMhokKE6OMS_XtQ1T545ipX_2Jfuo2Y2zzGCIfr-1NA0PhXolWoZIODl0rqsXnQHP3Q" width="240" /></div><br /><br /></span></span></div><div><span style="color: #2a3140; font-family: Helvetica;"><span style="font-size: 12px;"><br /></span></span></div><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">Data Analyst:</p><ul class="ul1"><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Focus: Data analysts focus on gathering, organizing, and analyzing data to provide insights and support decision-making. They interpret data, create reports, and identify trends and patterns that help businesses make informed decisions.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Skill Set: Data analysts require strong analytical skills and proficiency in tools like Excel, SQL, and data visualization tools such as Tableau or Power BI. They should be able to work with structured and semi-structured data, conduct statistical analysis, and present data in a meaningful way.</span></li><li class="li2" style="color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: "Times New Roman"; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal;"></span><span class="s2" style="background-color: #f5f5f6;">Job Responsibilities: Data analysts are responsible for collecting and cleaning data, performing data analysis, creating visualizations and reports, identifying key performance indicators (KPIs), and presenting findings to stakeholders. They focus on providing descriptive and diagnostic insights to support business operations.</span></li></ul><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"><br /></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;"></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEj8PRvOeX4USpp3zftZiXa8rnFwXNkzoUhdjSC47xRLbUKH80gcRkZBio2e212quzpKG9bgJIaH6p4_GB4liOrSMaeiTZXhAW3gq3s_Jm7oPVTvmumeiRz-PJUEW2Coj3-h2dIYmPiIX9bcv2LXuQazQGl23cBLgYkuUfXf5oH8ghWbR1gOR4E9IomgQIU" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="2048" data-original-width="2048" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEj8PRvOeX4USpp3zftZiXa8rnFwXNkzoUhdjSC47xRLbUKH80gcRkZBio2e212quzpKG9bgJIaH6p4_GB4liOrSMaeiTZXhAW3gq3s_Jm7oPVTvmumeiRz-PJUEW2Coj3-h2dIYmPiIX9bcv2LXuQazQGl23cBLgYkuUfXf5oH8ghWbR1gOR4E9IomgQIU" width="240" /></a></div><br /><br /><p></p><p class="p1" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px 0px 15px;">While there are overlaps between the two roles, data scientists generally have a more specialized skill set and handle more complex tasks, such as building predictive models and developing algorithms. Data analysts, on the other hand, focus on interpreting and presenting data to support business decision-making.</p><p class="p3" style="background-color: #f5f5f6; color: #2a3140; font-family: Helvetica; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 12px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: normal; margin: 0px;">It's worth noting that the specific responsibilities and skill requirements can vary depending on the organization and the industry. In some cases, the terms "data scientist" and "data analyst" may be used interchangeably, or the roles may overlap to some extent.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-6175834950721646222023-06-19T11:12:00.003-07:002023-06-19T11:17:49.565-07:00How to Merge two sorted arrays without using extra space?<p>To merge two sorted arrays without using extra space, please follow the below steps:</p><p></p><ol style="text-align: left;"><li>You can utilize the fact that both arrays are already sorted. </li><li>You can perform an in-place merge by rearranging the elements in one of the arrays. </li><li>Start from the last elements of both arrays and compare them.</li><li>Place the larger number at end of first array.</li><li>Decrease both the array index and move to the previous position.</li><li>Continue this process until all elements are processed.</li><li>if anything left in 2nd array then copy it at last of 1st array.</li></ol><div class="flex-shrink-0 flex flex-col relative items-end" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; align-items: flex-end; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; flex-direction: column; flex-shrink: 0; position: relative;"><div class="text-xs flex items-center justify-center gap-1 absolute left-0 top-2 -ml-4 -translate-x-full group-hover:visible visible" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: -100%; --tw-translate-y: 0; align-items: center; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; font-size: 0.75rem; gap: 0.25rem; justify-content: center; left: 0px; line-height: 1rem; margin-left: -1rem; position: absolute; top: 0.5rem; transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); visibility: visible;"><span class="flex-grow flex-shrink-0" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; flex-grow: 1; flex-shrink: 0;"><br class="Apple-interchange-newline" />1</span></div></div><div class="relative flex w-[calc(100%-50px)] flex-col gap-1 md:gap-3 lg:w-[calc(100%-115px)]" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; flex-direction: column; gap: 0.75rem; position: relative; width: calc(100% - 115px);"><div class="flex flex-grow flex-col gap-3" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; flex-direction: column; flex-grow: 1; gap: 0.75rem;"><div class="min-h-[20px] flex flex-col items-start gap-4 whitespace-pre-wrap break-words" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; align-items: flex-start; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; flex-direction: column; gap: 1rem; min-height: 20px; overflow-wrap: break-word; white-space: pre-wrap;"><div class="markdown prose w-full break-words dark:prose-invert light" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-prose-body: #374151; --tw-prose-bold: #111827; --tw-prose-bullets: #d1d5db; --tw-prose-captions: #6b7280; --tw-prose-code: #111827; --tw-prose-counters: #6b7280; --tw-prose-headings: #111827; --tw-prose-hr: #e5e7eb; --tw-prose-invert-body: #d1d5db; --tw-prose-invert-bold: #fff; --tw-prose-invert-bullets: #4b5563; --tw-prose-invert-captions: #9ca3af; --tw-prose-invert-code: #fff; --tw-prose-invert-counters: #9ca3af; --tw-prose-invert-headings: #fff; --tw-prose-invert-hr: #374151; --tw-prose-invert-lead: #9ca3af; --tw-prose-invert-links: #fff; --tw-prose-invert-pre-bg: rgba(0,0,0,.5); --tw-prose-invert-pre-code: #d1d5db; --tw-prose-invert-quote-borders: #374151; --tw-prose-invert-quotes: #f3f4f6; --tw-prose-invert-td-borders: #374151; --tw-prose-invert-th-borders: #4b5563; --tw-prose-lead: #4b5563; --tw-prose-links: #111827; --tw-prose-pre-bg: #1f2937; --tw-prose-pre-code: #e5e7eb; --tw-prose-quote-borders: #e5e7eb; --tw-prose-quotes: #111827; --tw-prose-td-borders: #e5e7eb; --tw-prose-th-borders: #d1d5db; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-body); font-size: 1rem; line-height: 1.75; max-width: none; overflow-wrap: break-word; width: 653px;"><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 0.875em; line-height: 1.71429; margin-bottom: 0px; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">class</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">MergeSortedArrays</span> {</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">merge</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums1, <span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> m, <span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums2, <span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> n)</span> {</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">i</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> m - <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>; <span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// index of last element in nums1</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">j</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> n - <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>; <span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// index of last element in nums2</span></code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">k</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> m + n - <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>; <span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// index of last position in merged array</span>
<span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// Starting from the last elements of both arrays and comparing them</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">while</span> (i >= <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span> && j >= <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (nums1[i] >= nums2[j]) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> nums1[k] = nums1[i];
i--;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">else</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> nums1[k] = nums2[j];
j--; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> k--; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// If there are remaining elements in nums2, copy them to nums1</span></code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">while</span> (j >= <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>) {</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">nums1[k] = nums2[j];
j--;
k--; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">main</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(String[] args)</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums1 = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>}; <span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// sorted array with extra space for merging</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums2 = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">6</span>}; <span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// sorted array</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">m</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>; <span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// number of elements in nums1</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">n</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>; <span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// number of elements in nums2</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> merge(nums1, m, nums2, n);
<span class="hljs-comment" color="rgba(255, 255, 255, 0.5)" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">// Print the merged array</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">for</span> (<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> num : nums1) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.print(num + <span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">" "</span>); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> }</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> }</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> }</code></div></div></pre></div></div></div></div><p>The output of the given example would be: `1 2 3 4 5 6`, which represents the merged sorted array. </p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-71517833398790120302023-06-18T01:05:00.003-07:002023-06-18T01:06:17.068-07:00Given an array which consists of only 0, 1 and 2. Sort the array without using any sorting algo.<p><span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">We could have use two way pointer approach if we would have only two values 0s and 1s but we have three 0s, 1s, and 2s, Now we can use the Dutch National Flag algorithm, also known as the 3-way partitioning algorithm. This algorithm separates the array into three sections: 0s, 1s, and 2s.</span></p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px; white-space: pre-wrap;">Here's an example implementation in Java:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 0px; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">class</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Sort012</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">sortArray</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums)</span> {</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">low</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">mid</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">high</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> nums.length - <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">while</span> (mid <= high) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (nums[mid] == <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Swap element at mid with element at low</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">temp</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> nums[low]; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> nums[low] = nums[mid]; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> nums[mid] = temp; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> low++;
mid++; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">else</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (nums[mid] == <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Move to the next element</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> mid++; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">else</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (nums[mid] == <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Swap element at mid with element at high</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">temp</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> nums[mid]; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> nums[mid] = nums[high]; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> nums[high] = temp; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> high--; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> }</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">main</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(String[] args)</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>}; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Before sorting: "</span> + Arrays.toString(nums));
sortArray(nums); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"After sorting: "</span> + Arrays.toString(nums));</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">}
</code></div></div></pre><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px; white-space: pre-wrap;">In this example, the array is <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">{2, 0, 1, 1, 0, 2, 1, 0}</code>. After sorting the array using the Dutch National Flag algorithm, the sorted array will be <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">{0, 0, 0, 1, 1, 1, 2, 2}</code>.</p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px; white-space: pre-wrap;">The algorithm maintains three pointers: <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">low</code>, <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">mid</code>, and <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">high</code>. The <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">low</code> pointer keeps track of the boundary of the section with 0s, the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">mid</code> pointer scans the array, and the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">high</code> pointer keeps track of the boundary of the section with 2s.</p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;">The algorithm traverses the array from left to right. If the element at the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">mid</code> pointer is 0, it is swapped with the element at the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">low</code> pointer, and both pointers are incremented. If the element at the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">mid</code> pointer is 1, it is left in its place, and the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">mid</code> pointer is incremented. If the element at the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">mid</code> pointer is 2, it is swapped with the element at the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">high</code> pointer, and the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">high</code> pointer is decremented. This process continues until the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">mid</code> pointer surpasses the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">high</code> pointer, indicating that the array is sorted.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-67675707993653074082023-06-18T00:35:00.000-07:002023-06-18T00:36:06.254-07:00Find the Kth Maximum and Minimum element from Array?<div class="flex-shrink-0 flex flex-col relative items-end" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; align-items: flex-end; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #343541; display: flex; flex-direction: column; flex-shrink: 0; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; position: relative;"><div class="text-xs flex items-center justify-center gap-1 absolute left-0 top-2 -ml-4 -translate-x-full group-hover:visible visible" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: -100%; --tw-translate-y: 0; align-items: center; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; font-size: 0.75rem; gap: 0.25rem; justify-content: center; left: 0px; line-height: 1rem; margin-left: -1rem; position: absolute; top: 0.5rem; transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); visibility: visible;"><span class="flex-grow flex-shrink-0" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; flex-grow: 1; flex-shrink: 0;"><br class="Apple-interchange-newline" />2 / 2</span><button class="dark:text-white disabled:text-gray-300 dark:disabled:text-gray-400" disabled="" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; font-family: inherit; font-size: 12px; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px;"><svg class="h-3 w-3" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><polyline points="9 18 15 12 9 6"></polyline></svg></button></div></div><div class="relative flex w-[calc(100%-50px)] flex-col gap-1 md:gap-3 lg:w-[calc(100%-115px)]" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #343541; display: flex; flex-direction: column; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; gap: 0.75rem; position: relative; width: calc(100% - 115px);"><div class="flex flex-grow flex-col gap-3" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; flex-direction: column; flex-grow: 1; gap: 0.75rem;"><div class="min-h-[20px] flex flex-col items-start gap-4 whitespace-pre-wrap break-words" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; align-items: flex-start; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; display: flex; flex-direction: column; gap: 1rem; min-height: 20px; overflow-wrap: break-word; white-space: pre-wrap;"><div class="markdown prose w-full break-words dark:prose-invert light" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-prose-body: #374151; --tw-prose-bold: #111827; --tw-prose-bullets: #d1d5db; --tw-prose-captions: #6b7280; --tw-prose-code: #111827; --tw-prose-counters: #6b7280; --tw-prose-headings: #111827; --tw-prose-hr: #e5e7eb; --tw-prose-invert-body: #d1d5db; --tw-prose-invert-bold: #fff; --tw-prose-invert-bullets: #4b5563; --tw-prose-invert-captions: #9ca3af; --tw-prose-invert-code: #fff; --tw-prose-invert-counters: #9ca3af; --tw-prose-invert-headings: #fff; --tw-prose-invert-hr: #374151; --tw-prose-invert-lead: #9ca3af; --tw-prose-invert-links: #fff; --tw-prose-invert-pre-bg: rgba(0,0,0,.5); --tw-prose-invert-pre-code: #d1d5db; --tw-prose-invert-quote-borders: #374151; --tw-prose-invert-quotes: #f3f4f6; --tw-prose-invert-td-borders: #374151; --tw-prose-invert-th-borders: #4b5563; --tw-prose-lead: #4b5563; --tw-prose-links: #111827; --tw-prose-pre-bg: #1f2937; --tw-prose-pre-code: #e5e7eb; --tw-prose-quote-borders: #e5e7eb; --tw-prose-quotes: #111827; --tw-prose-td-borders: #e5e7eb; --tw-prose-th-borders: #d1d5db; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-body); font-size: 1rem; line-height: 1.75; max-width: none; overflow-wrap: break-word; width: 653px;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px 0px 1.25em;">This is one of the most asked question from array in interviews. Find the "Kth" maximum and minimum element of an array in Java. This question is asked to check the logical skill and java knowledge of candidate. you can follow below steps to solve this problem:</p><ol style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; counter-reset: item 0; display: flex; flex-direction: column; list-style-image: initial; list-style-position: initial; margin: 1.25em 0px; padding: 0px 0px 0px 1rem;"><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;">Sort the array in ascending order.</li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;">The "Kth" minimum element will be at index <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600; margin-bottom: 1.25em; margin-top: 1.25em;">K-1</code>.</li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;">The "Kth" maximum element will be at index <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600; margin-bottom: 1.25em; margin-top: 1.25em;">array.length - K</code>.</li></ol><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 1.25em 0px;">Here's an example code snippet that demonstrates this approach:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 0px; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">import</span> java.util.Arrays;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">class</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">KthMinMaxElement</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">main</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(String[] args)</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] array = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">9</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">7</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">8</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">6</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>};</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Sort the array in ascending order</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> Arrays.sort(array);</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">k</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// The value of k</span>
<span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Find the Kth minimum element</span></code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">kthMin</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> array[k - <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>];</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Kth minimum element: "</span> + kthMin);</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Find the Kth maximum element</span></code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">kthMax</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> array[array.length - k];</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Kth maximum element: "</span> + kthMax);</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> }</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><span style="background-color: initial; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; white-space: normal; word-spacing: normal;"> }</span></div></div></pre><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 1.25em 0px;">In this example, the array is <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">{9, 5, 2, 7, 1, 8, 6, 3, 4}</code>. We want to find the 3rd minimum and maximum elements. The sorted array is <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">{1, 2, 3, 4, 5, 6, 7, 8, 9}</code>, so the 3rd minimum element is 3, and the 3rd maximum element is 7.</p></div></div></div></div><p><span style="background-color: #f7f7f8; color: var(--tw-prose-body); font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 1rem; white-space: pre-wrap;">You can modify the code according to your specific requirements by providing a different array and value for </span><code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600; white-space: pre-wrap;">k</code><span style="background-color: #f7f7f8; color: var(--tw-prose-body); font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 1rem; white-space: pre-wrap;">.</span> </p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-82784783119355235122023-06-16T23:28:00.001-07:002023-06-16T23:29:22.769-07:00Reverse Java Array with Two-Pointer Technique<p> <span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">To reverse an array in Java with an optimized approach, you can use a two-pointer technique. Here's an example implementation:</span></p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 0px; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">class</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">ReverseArray</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">reverse</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] arr)</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">left</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">right</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> arr.length - <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">while</span> (left < right) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Swap elements at left and right indices</span>
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">temp</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> arr[left];
arr[left] = arr[right];
arr[right] = temp; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Move the pointers towards the center</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> left++;
right--; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">main</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(String[] args)</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] arr = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>}; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Original Array: "</span> + Arrays.toString(arr));
reverse(arr);
System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Reversed Array: "</span> + Arrays.toString(arr)); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">}
</code></div></div></pre><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px; white-space: pre-wrap;">In this example, the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">reverse</code> method takes an array of integers (<code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">arr</code>) as input. It initializes two pointers, <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">left</code> and <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">right</code>, pointing to the first and last elements of the array, respectively. It then iterates through the array, swapping the elements at the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">left</code> and <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">right</code> indices using a temporary variable. After each swap, the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">left</code> pointer is incremented and the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">right</code> pointer is decremented, moving towards the center of the array. This process continues until the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">left</code> pointer crosses the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">right</code> pointer, resulting in a reversed array.</p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px; white-space: pre-wrap;">The example demonstrates the reversal of the array <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">{1, 2, 3, 4, 5}</code>. The output will be:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 0px; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">javascript</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-javascript" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Original</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Array</span>: [<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>] </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-javascript" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Reversed</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Array</span>: [<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>]
</code></div></div></pre><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;">Using the two-pointer technique ensures that each element in the array is swapped only once, resulting in an optimized approach for reversing the array.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-49294378165001360932023-06-16T23:18:00.002-07:002023-06-16T23:20:35.382-07:00Find TwoSum from array in java<p><span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">This one is very favourite question of java interviewers, In which you have to </span><span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">find the two numbers in an array that add up to a specific target sum, you can use the Two Sum problem solution. Here's an example implementation in Java:</span></p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 0px; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">import</span> java.util.HashMap;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">import</span> java.util.Map; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">class</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">TwoSum</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] findTwoSum(<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums, <span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> target) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> Map<Integer, Integer> map = <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">HashMap</span><>(); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">for</span> (<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">i</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>; i < nums.length; i++) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">complement</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> target - nums[i];
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (map.containsKey(complement)) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">return</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">int</span>[]{map.get(complement), i}; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> map.put(nums[i], i); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> }</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">return</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">int</span>[]{-<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, -<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>}; <span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// If no solution is found</span> </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">main</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(String[] args)</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] nums = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">7</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">11</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">15</span>}; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">target</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">9</span>; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] result = findTwoSum(nums, target); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (result[<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>] != -<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span> && result[<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>] != -<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>) { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Two numbers found: "</span> + nums[result[<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>]] + <span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">" and "</span> + nums[result[<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>]]); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">else</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"No two numbers found that add up to the target sum."</span>);
} </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">}
</code></div></div></pre><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;">In this example, the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">findTwoSum</code> method takes an array of integers (<code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">nums</code>) and a target sum as parameters. It uses a <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">HashMap</code> to store the complement of each element (the difference between the target and the current number) and its corresponding index. It iterates through the array, checking if the complement exists in the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">HashMap</code>. If found, it returns the indices of the two numbers that add up to the target sum. If no solution is found, it returns <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">[-1, -1]</code>.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-40787668719432965812023-06-16T00:04:00.003-07:002023-06-16T00:05:13.849-07:00Best micro-service gateways available in spring boot application<p> <span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">When it comes to choosing the best microservice gateway in a Spring Boot application, there are several popular options available. The choice depends on your specific requirements and preferences. Here are a few notable microservice gateway options for Spring Boot:</span></p><ol style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; counter-reset: item 0; display: flex; flex-direction: column; list-style-image: initial; list-style-position: initial; margin: 1.25em 0px; padding: 0px 0px 0px 1rem;"><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;"><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;"><b>Spring Cloud Gateway:</b>
Spring Cloud Gateway is a lightweight, developer-friendly gateway built on top of Spring Boot and Spring WebFlux. It provides a powerful routing and filtering mechanism, making it easy to build scalable and resilient microservice architectures. Spring Cloud Gateway integrates well with the Spring ecosystem and supports features like rate limiting, circuit breaking, and service discovery.</span></span></p><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;"> <!-- Spring Boot Starter Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Spring Cloud Starter Gateway -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
<!-- Additional Spring Cloud dependencies -->
<!-- Add other Spring Cloud dependencies as per your requirements -->
</dependencies></span></span><dependencies></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;"><b style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">Netflix Zuul:</b><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;">
Netflix Zuul is a battle-tested microservice gateway developed by Netflix. While it's not explicitly built on Spring Boot, it can be used with Spring Cloud to leverage its features. Zuul offers robust routing and filtering capabilities, integrates with Netflix Eureka for service discovery, and supports features like dynamic routing, request/response modification, and centralized configuration.</span></span></p><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;"> <!-- Spring Boot Starter Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Netflix Zuul Dependency -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-zuul</artifactId>
</dependency>
<!-- Additional dependencies -->
<!-- Add other dependencies as per your requirements -->
</dependencies></span></span><dependencies></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;"><b style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">Kong:</b><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;">
Kong is an open-source API gateway that can be used as a microservice gateway in Spring Boot applications. It provides features like routing, load balancing, authentication, rate limiting, and logging. Kong can be deployed as a standalone service or as part of a containerized infrastructure, and it offers various plugins to extend its functionality.<dependencies></span></span></p><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;"> <!-- Spring Boot Starter Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Kong Dependency -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-kong</artifactId>
</dependency>
<!-- Additional dependencies -->
<!-- Add other dependencies as per your requirements -->
</dependencies>
</span></span></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;"><b style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">Ambassador:</b><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;">
Ambassador is a Kubernetes-native API gateway that can be used with Spring Boot microservices running on Kubernetes. It provides features like edge routing, traffic management, authentication, and observability. Ambassador integrates well with Kubernetes and can leverage its service discovery and routing capabilities.<dependencies></span></span></p><span style="color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><span style="white-space: pre-wrap;"> <!-- Spring Boot Starter Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Ambassador Dependency -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-kubernetes-ribbon</artifactId>
</dependency>
<!-- Additional dependencies -->
<!-- Add other dependencies as per your requirements -->
</dependencies>
</span></span></li></ol><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;">These are just a few examples of microservice gateway options for Spring Boot. It's essential to evaluate your specific requirements, such as performance, scalability, security, and ease of integration, when choosing the best gateway for your project. Consider factors like community support, documentation, and compatibility with your existing infrastructure while making your decision.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-80267840108768835872023-06-15T07:19:00.007-07:002023-06-15T07:20:17.890-07:00How to find the duplicate elements in java array ?<p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 0px 0px 1.25em; white-space: pre-wrap;">To find duplicate elements in an array in Java, you can use various approaches. Here are a few commonly used methods:</p><ol style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; counter-reset: item 0; display: flex; flex-direction: column; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; list-style-image: initial; list-style-position: initial; margin: 1.25em 0px; padding: 0px 0px 0px 1rem; white-space: pre-wrap;"><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using Brute Force:
You can use a nested loop to compare each element of the array with all other elements and check for duplicates. If a duplicate is found, you can store or print the element.</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] array = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>};
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">for</span> (<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">i</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>; i < array.length - <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>; i++) {
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">for</span> (<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">j</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> i + <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>; j < array.length; j++) {
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (array[i] == array[j]) {
System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Duplicate element: "</span> + array[i]);
}
}
}
</code></div></div></pre></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using HashSet:
You can utilize a <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">HashSet</code> to keep track of unique elements encountered in the array. When adding elements to the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">HashSet</code>, if an element is already present, it indicates a duplicate.</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] array = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>};
Set<Integer> uniqueElements = <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">HashSet</span><>();
Set<Integer> duplicateElements = <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">HashSet</span><>();
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">for</span> (<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> num : array) {
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (!uniqueElements.add(num)) {
duplicateElements.add(num);
}
}
System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Duplicate elements: "</span> + duplicateElements);
</code></div></div></pre></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using HashMap:
You can utilize a <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">HashMap</code> to store the frequency of each element in the array. If the frequency exceeds 1, it indicates a duplicate element.</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span>[] array = {<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">4</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">5</span>, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>};
Map<Integer, Integer> elementFrequency = <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">HashMap</span><>();
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">for</span> (<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> num : array) {
elementFrequency.put(num, elementFrequency.getOrDefault(num, <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">0</span>) + <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>);
}
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">for</span> (Map.Entry<Integer, Integer> entry : elementFrequency.entrySet()) {
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">if</span> (entry.getValue() > <span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>) {
System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Duplicate element: "</span> + entry.getKey());
}
}
</code></div></div></pre></li></ol><p><span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">These are a few approaches to find duplicate elements in an array in Java. Choose the one that suits your requirements and the size of the array.</span> </p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-17798758062017333582023-06-15T03:29:00.001-07:002023-06-15T03:29:39.185-07:00How to sort a list of objects in java 8 with stream?<p> <span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;">In Java 8, you can use the Stream API to sort a list of </span><code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600; white-space: pre-wrap;">Employee</code><span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space: pre-wrap;"> objects based on name and ID. Here's an example:</span></p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 0px; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">import</span> java.util.ArrayList; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">import</span> java.util.Comparator; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">import</span> java.util.List; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">class</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Employee</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">private</span> <span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> id; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">private</span> String name;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Employee</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> id, String name)</span> {</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-built_in" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #e9950c;">this</span>.id = id; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-built_in" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #e9950c;">this</span>.name = name;</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> }</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">int</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">getId</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">()</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">return</span> id; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> String <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">getName</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">()</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">return</span> name; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-meta" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.6);">@Override</span>
<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> String <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">toString</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">()</span> {</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">return</span> <span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Employee{"</span> +
<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"id="</span> + id +
<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">", name='"</span> + name + <span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">'\''</span> +
<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">'}'</span>; </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">} </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">class</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">EmployeeSortingExample</span> {</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">public</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">static</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">void</span> <span class="hljs-title function_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">main</span><span class="hljs-params" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">(String[] args)</span> { </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> List<Employee> employees = <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">ArrayList</span><>(); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> employees.add(<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Employee</span>(<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">3</span>, <span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"John"</span>)); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> employees.add(<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Employee</span>(<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">1</span>, <span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Alice"</span>)); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> employees.add(<span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">Employee</span>(<span class="hljs-number" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">2</span>, <span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Bob"</span>)); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Sort by name</span>
List<Employee> sortedByName = employees.stream()
.sorted(Comparator.comparing(Employee::getName))
.toList();</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Sorted by name:"</span>);</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> sortedByName.forEach(System.out::println);</code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-comment" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(255, 255, 255, 0.5);">// Sort by ID</span>
List<Employee> sortedById = employees.stream()
.sorted(Comparator.comparingInt(Employee::getId))
.toList();
System.out.println(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"Sorted by ID:"</span>);
sortedById.forEach(System.out::println); </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"> } </code></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">}
</code></div></div></pre><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px; white-space: pre-wrap;">In this example, we use the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">stream()</code> method to convert the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">List</code> of employees into a stream. Then we use the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">sorted</code> method along with a comparator created using <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">Comparator.comparing()</code> to specify the property to sort on (<code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">Employee::getName</code> for name and <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">Employee::getId</code> for ID).</p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px; white-space: pre-wrap;">The <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">sorted</code> method returns a new sorted stream, and we use the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">toList</code> method to collect the sorted elements into a new <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">List</code>.</p><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;">After sorting the streams and collecting the sorted elements into new lists, we use the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">forEach</code> method to iterate over the sorted lists and print the employees' details. The <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">System.out::println</code> method reference is used as a lambda expression to print each employee.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-14117973708960339252023-06-15T03:18:00.000-07:002023-06-15T03:18:46.364-07:00How many ways are there to create object in java?<p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 0px 0px 1.25em; white-space: pre-wrap;">In Java, there are several ways to create objects. Here are the most common ways:</p><ol style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; counter-reset: item 0; display: flex; flex-direction: column; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; list-style-image: initial; list-style-position: initial; margin: 1.25em 0px; padding: 0px 0px 0px 1rem; white-space: pre-wrap;"><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">new</code> keyword: The <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">new</code> keyword is used to create a new instance of a class. It invokes the class constructor and allocates memory for the object. For example:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">MyClass</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">obj</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">MyClass</span>();
</code></div></div></pre></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using reflection: Reflection allows you to create objects dynamically at runtime. It provides classes like <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">Class</code> and <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">Constructor</code> that can be used to create objects without knowing the class name at compile-time. Here's an example:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;">Class<?> clazz = Class.forName(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"MyClass"</span>);
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">MyClass</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">obj</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> (MyClass) clazz.newInstance();
</code></div></div></pre></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using clone: The <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">clone</code> method creates a copy of an existing object. To use this approach, the class must implement the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">Cloneable</code> interface and override the <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">clone</code> method. Here's an example:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">MyClass</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">originalObj</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">MyClass</span>();
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">MyClass</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">clonedObj</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> originalObj.clone();
</code></div></div></pre></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using deserialization: Deserialization is the process of converting an object from its serialized form (e.g., byte stream) back into an object. It allows you to recreate objects from stored data. Here's an example:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">FileInputStream</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">fileIn</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">FileInputStream</span>(<span class="hljs-string" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #00a67d;">"object.ser"</span>);
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">ObjectInputStream</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">in</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> <span class="hljs-keyword" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #2e95d3;">new</span> <span class="hljs-title class_" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #f22c3d;">ObjectInputStream</span>(fileIn);
<span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">MyClass</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">obj</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> (MyClass) in.readObject();
in.close();
fileIn.close();
</code></div></div></pre></li><li style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px; padding-left: 0.375em;"><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin: 0px;">Using static factory methods: Some classes provide static factory methods that create and return instances of the class. These methods have names like <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">getInstance()</code>, <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">valueOf()</code>, or <code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600;">newInstance()</code>. They provide flexibility in object creation. Here's an example:</p><pre style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: transparent; border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: currentcolor; font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; line-height: 1.71429; margin-bottom: 1.25em; margin-top: 0px; overflow-x: auto; padding: 0px;"><div class="bg-black rounded-md mb-4" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: rgba(0,0,0,var(--tw-bg-opacity)); border-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; margin-bottom: 1rem;"><div class="flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="--tw-bg-opacity: 1; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-text-opacity: 1; --tw-translate-x: 0; --tw-translate-y: 0; align-items: center; background-color: rgba(52,53,65,var(--tw-bg-opacity)); border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: rgba(217,217,227,var(--tw-text-opacity)); display: flex; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 0.75rem; justify-content: space-between; line-height: 1rem; padding: 0.5rem 1rem; position: relative;"><span style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">java</span><button class="flex ml-auto gap-2" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; appearance: button; background-image: none; border-color: rgb(217, 217, 227); border-style: solid; border-width: 0px; cursor: pointer; display: flex; font-family: inherit; font-size: 12px; font-weight: inherit; gap: 0.5rem; line-height: inherit; margin: 0px 0px 0px auto; padding: 0px;"><svg class="h-4 w-4" fill="none" height="1em" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="currentColor" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect height="4" rx="1" ry="1" width="8" x="8" y="2"></rect></svg>Copy code</button></div><div class="p-4 overflow-y-auto" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; overflow-y: auto; padding: 1rem;"><code class="!whitespace-pre hljs language-java" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background: none; border-radius: 0.3em; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: white; font-family: inherit; font-size: inherit; font-weight: inherit; hyphens: none; line-height: 1.5; overflow-wrap: normal; padding: 0.1em; tab-size: 4; white-space: normal; word-break: normal; word-spacing: normal;"><span class="hljs-type" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">MyClass</span> <span class="hljs-variable" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #df3079;">obj</span> <span class="hljs-operator" style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; border: 0px solid rgb(217, 217, 227); box-sizing: border-box;">=</span> MyClass.getInstance();
</code></div></div></pre></li></ol><p style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; margin: 1.25em 0px 0px; white-space: pre-wrap;">These are some common ways to create objects in Java. The appropriate method depends on the specific requirements of your application.</p>Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-83255717020372418782020-03-25T03:20:00.001-07:002020-03-25T03:20:18.424-07:00Where to use Node.js<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal" style="text-align: justify;">
It’s a topic which every
developer faces now a day. Every architect or developer having experience in
java always reluctant to go for node.js and prefer java. Before inclining
towards any language we need to understand the basic fundamental of that
language. Understanding of basics will help us to find suitable language for
our server which can fulfill our requirements best. The basic nature of java and
node.js is different in way they handle the requests. </div>
<div class="MsoNormal" style="text-align: justify;">
<span style="mso-spacerun: yes;"> </span>Java is multi-threaded
language where requests can be entertained by multiple threads so it uses the
processor in better way. The basic programming nature of java in Synchronous.
If it is executing a code, then it waits for its finish before going to next
line of code. In simple words let’s take an example that we have two block of
codes where in first block we have a HTTPS call and in second block we have
code which logs a message in log file. The HTTPS call takes 5 seconds on an
average so java code will wait on first code block for 5 seconds to receive the
response and complete that call before proceed to second block which make the
whole process a bit slow. </div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQLrGPFupbIwud0_tDttxkiqyKzY5VgDndec4zKIBLBHKGhS-EZojIh-8sDvqsTDreX-C5cxiL3a97kjeOlmRfueRAYAUdIEADJTSRR2MyBSp4rq2PeDRKARnAuYPfZBCMSJ03CHjK9H8/s1600/SampleCode.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="301" data-original-width="681" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQLrGPFupbIwud0_tDttxkiqyKzY5VgDndec4zKIBLBHKGhS-EZojIh-8sDvqsTDreX-C5cxiL3a97kjeOlmRfueRAYAUdIEADJTSRR2MyBSp4rq2PeDRKARnAuYPfZBCMSJ03CHjK9H8/s1600/SampleCode.jpg" /></a></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="mso-fareast-language: EN-IN; mso-no-proof: yes;"></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 36.0pt;">
<span style="mso-spacerun: yes;"> </span><span style="mso-spacerun: yes;"> </span>We can consider node.js as single
thread language where whole application uses a single thread to fulfill all the
requests on queue base architecture. All required actions are stored in queue
and executed by single thread. The basic programming nature of node.js is asynchronous.
If it is executing a code, then it does not wait for its finish before going to
next line of code. In same example which we took for java that we have two block
of codes where in first block we have a HTTPS call and in second block we have
code which logs a message in log file. The HTTPS call takes 5 seconds on an
average so node.js code will not wait on first code block for 5 seconds to
receive the response and complete that call rather it execute it and proceed to
second block the action which we require on response of first call is also queued.</div>
<div class="MsoNormal" style="text-align: justify;">
<span style="mso-spacerun: yes;"> </span><span style="mso-spacerun: yes;"> </span>Node.js inherit
this Asynchronous feature from JavaScript which makes it <b style="mso-bidi-font-weight: normal;">suitable</b> for developing <b style="mso-bidi-font-weight: normal;">high
IO operation, data intensive, non-blocking applications</b> like Web-servers and
node.js is <b style="mso-bidi-font-weight: normal;">not suited</b> for application
where <b style="mso-bidi-font-weight: normal;">high calculation, complex business
logic or processor intensive operation</b> are required as it has single thread
which can get busy for executing that calculation.</div>
<div class="MsoNormal" style="text-align: justify; text-indent: 36.0pt;">
<br /></div>
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves>false</w:TrackMoves>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-IN</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="371">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-fareast-language:EN-US;}
</style>
<![endif]--></div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-59380691935485958622019-04-07T23:42:00.003-07:002019-04-07T23:43:34.516-07:00Singleton Bean working in Spring<div dir="ltr" style="text-align: left;" trbidi="on">
There are five main scopes for creating a bean in spring.<br />
<ol style="text-align: left;">
<li>singleton</li>
<li>prototype</li>
<li>request</li>
<li>session</li>
<li>global-session </li>
</ol>
Singleton is default scope type if we don't mention any scope then its singleton by default. A general perception about spring singleton bean is that it behaves same as java singleton class but there are few fundamental differences. Spring IoC container creates only one object for singleton bean and store it in cache memory of all singleton beans. All requests for bean with same name or id will get the same object, It does not mean that class defined as bean is singleton also. lets take an example where we create two beans for same class with different bean name and id then spring will create two different objects in shared memory and will return object based upon name or id given in request.<br />
<br />
@Configuration<br />
public class AppConfig {<br />
@Bean(name={"sineltonTest"})<br />
@Scope(value = ConfigurableBeanFactory.SCOPE_SINGLETON)<br />
public singeltonTest getSingeltonTest() {<br />
return new singeltonTest();<br />
}<br />
<br />
@Bean (name={"sineltonTest1"})<br />
@Scope(value = ConfigurableBeanFactory.SCOPE_SINGLETON)<br />
public singeltonTest getSingeltonTest1() {<br />
return new singeltonTest();<br />
}<br />
}<br />
<br />
In above example spring will create two different objects for two beans ("sineltonTest", "sineltonTest1") in shared cache and if we use @Autowired with @Qualifire("singeltonTest1") then it will get object from cache created for bean with name "sineltonTest1" so bean is sigleton not the class. There is one more catch w.r.t singleton bean in spring that what happen when we create object of that class with new operator instead of @autowired? This question is asked basically to confuse the person in interview. The clear answer is that spring will not return object from cache now it depends upon exact implementation of the bean class if it is created as java singleton class then one instance is created and every time same instance will be returned otherwise every time new instance is created and returned. </div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-44842187103638387732019-03-18T05:20:00.001-07:002019-03-18T05:20:08.151-07:00Monitor JVM (memory utilization etc.) with JConsole on remote server<div dir="ltr" style="text-align: left;" trbidi="on">
It's very common requirement to monitor the memory utilization by our application. This can be done with JConsole. We can monitor JVM on local machine or on remote machine with JConsole.<br />
Firstly we have to run the JConsole, it can be done as:<br />
<ol style="text-align: left;">
<li>Go to bin folder of your JDK and run the jconole.exe file.</li>
<li>Open command line and change directory to bin folder of JDK folder and write jconsole.exe and press enter.</li>
</ol>
<img alt="" src="data:image/png;base64,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roEDB2ro0KEaPXq0xo8fH17dC71RS+g1eh9//HE49hYsWKCFCxeGV/W++uorrVixQsXFxdqwYYO2b9+uyspK7dmzRwcOHDis1+xJUllZmaZPn64XX3xRnTp10if58yNiL6HgI/YYhmnBk1cUtP25QewByY3YAwwTir3CDTUxQrFnDb6ilcVq3+EGnXnmmfr38320duOWyNirjo29HdW7VVmzVyvXrFPnzl2Unp6uAQMGaMiQIRo5cqTGjh2rCRMmaNKkSZo6dWpE8IUO5wwFX2hlzy72Qit7NTU12rdvnw4ePHhYwRcMBjV79mz17dtXnTp10sScSdp/4JBN8H0bN/i+O8zYZBiGSfbJKwra/twg9oDkRuwBhgnF3pcba2LYxV6wareWfrVcYyfkKFhd++YtodMrdu6q/W/VrrrTd4VV1uzVZ0uX6R+dOumpp57SSy+9pLfeekvDhw/X6NGj9eGHH2rChAmaPHmypkyZomnTpmnmzJnh6JszZ0743TcXLlyoL774Ql9++aW+/vprrVq1SuvWrdOmTZtUVlamyspK1dTUaO/evdq/f7++/fZbV9FXVVWl+fPna9CgQbq7c2cNH/GevjlwKKHgI/YYhjFh8oqCtj83iD0guUXEXqtec4k9oIULxd6yjbti5BUFVVZZE1axc5fKK2vC79AZrN6tsspqlVVWq7yyRuV15ynbUa3ynTXavqNKZTuqtD24U5U1ezTv08X6xz/+oSeeeEL9+vXTG2+8oaFDh+q9997T6NGjNXbsWI0fP14TJ04Mr/JNnz5dM2fODL+Ob+7cubZv0mINvm3btqmiokI7d+7Url27tGfPHu3fv1/fffddQu/QWVVVpS+++EJvvfWW/vnPf+r1N97UNwcO2QbfgTjBR+wxDNNSJ68oaPtzg9gDkhsre4BhQrH3VemuGKHY276jOmxbxc56wZ3aWr5DWysqtbVip7aVV2pbeaW2lu/Q5u0V2lIe1OayCm3aVq7Kmj2a88k83XnXXXr88cf14osvKisrS//973+VnZ2t4cOHa9SoURo9erQ++OCD8EpfTk5ORPTNnj07fFjnp59+qsWLF2vJkiXhj18oLi7W+vXrI6LPutJ34MABfffdd447MN9//7127typZcuWaeTIkXrkkUf0alaWY+zFe/0esccwTEudvKKg7c8NYg9IbsQeYJhEYm9bsErbglXaWrFTW8p2aEtZUFvKgtq8vUKbyyq0cWuZNm4t04bN27WudKvWlW5VyYbNKtmwWcXrS7Vm7QZtr6jUjMBs3XbbbXrkkUfUu3dvDRgwQK+99preeustDRkyRNnZ2Xr33Xf13nvvhcNv7NixGjdunCZOnBgOv9Dn8c2ZM0f5+fnhlb5Q9C1fvlyrV6/W2rVrtXHjRm3dulXl5eXhlb7Q6/nsVvpCsff1119r4sSJeuaZZ/Ta4MH65sDBBoIv9vV7xB7DMC11iD3Am4g9wDCh2CvatCtGXlGwdjXPEnql2yq0YUtt2K3ftE1rS7eoeH2pVq/doJXF67RizVoVrVyjZctX6cuvV6qwaIU+W7pMK9aUaHzOZP3973/Xww8/rGeffVaZmZkaMGCAXn31VQ0ePFhvvvmm3nrrLb399tt65513NGzYMA0fPlzvvfee3n///fBr+3JycjRlyhRNnz5dM2bMCK/2zZs3TwUFBTGHd5aUlEREX2VlpW30/fDDDzp48KB27Nih5cuXa9q0aXrxxRf1xptv1cWeu+Aj9hiGaamTVxS0/blB7AHJjdgDDBOKva837YqRV1S7grdpe4U2bi3X+s3bVbJxi1av3aiVxeu0snidvl5VrGUrVqmwaIW++LJIi5d8qYLPlmjBos+Vv2Ch5s77VHlz52nBos808v0xuummm/Xggw+qZ8+e6t27tzIzM9WvXz+9/PLLGjBggAYNGqRXXnlFWVlZGjx4sN544w3997//DQfgu+++q5EjR0as+oVW/KyHec6bNy/ijVysn8e3ZcsWVVRUqKqqSrt37w4f3nngwAHt3btX5eXlWr58uWbNmqX+/fvrrf++HRN7ibx+j9hjGKalTl5R0PbnBrEHJDdiDzBMKPaWb94dI68oqPWbt6lk42YVb9is1Ws3avmatfpq5RoVFq3Uki+/1mdLlqngsyWav3Cx5s6vDbvARx9rRiBPU2cElDNluj6cOEmTps3Q20OHqWPHjkpLS9MTTzyhZ599Vv/5z3/Uu3dv9e7dW88//7xeeOEF9enTRy+++KL69u2r/v3766WXXgqH4Kuvvqo33nhDQ4YM0ZAhQzR06NDw6/0++OADjR8/XpMnT9b06dOVm5urjz/+WPPnz9fixYtVWFgYjr7QSp81+nbv3q3q6mpt27ZNX3/9tXJzczVgwABlD3tX+/YftA++OK/fI/YYhmmpk1cUtP25QewByY3YAwwTir0Vm3fHyCsKanXJBq0oXquiVbWHZi5ZtlyLlnxZu3L36SLN+WSBcj+aq5m5H2nStBkanzNFYz6coJGjx+rdEaOUPfw9Dcl+V0Oy39XAV19ThxtuULdu3dSjRw89/fTTevrpp9WzZ0+lp6frqaeeCnvyySeVnp6unj176plnntFzzz2nXr16qXfv3srIyAhH4Msvv6xXXnkl/Nq/d955Jxx/Y8eOVU5OjqZPn668vDzl5+dr0aJFWrp0qZYvX66SkhKVlpaqrKxMO3bsUGVlpSoqKrR582Z9/fXXmj17tgYNGqQPxo7Tvv0Hte9AbPDFO5zzu++IPYZhWubkFQVtf24Qe0ByI/YAw4Rjb8vuGHlFQS1bvlpLly3XZ0uXqeDzpZq/8DN9PO9T5c75RNMDeZo8baY+nDhZo8eO1/CR72vIsOF6479D9Mprr2tQ1mC9NPAV9XtpgPr2f1nPv5ip9h06KDU1VT169FDPnj311FNPqUePHurevbsefvhh+f1+PfDAA0pLSwt78MEH9dBDD+nhhx/WI488oscffzwiBp999ln9+9//Vp8+fdS3b18NGDBAWVlZeuutt5Sdna2RI0fqww8/1NSpU5Wbm6v8/Hx99tlnKioqUnFxsUpLS7Vt2zaVl5errKxMpaWlKioq0kcffaRBgwZp0pSptbHnMviIPYZhWurkFQVtf24Qe0Byc4i9N4k9oIUKxd7Krbtj5BUFtfCLQn266HPlL1gUjrxps2Zr0tQZGjdxssaMm6ARo0ZrSPZwvf7m2xrwyqvK6PeSnu+Tod4vvKhne/1HT/V8Rj2eeEr/6vGk2v31enXp0kWPP/54eDWve/fu8vv9uu+++9S1a1d16tRJd955p26//Xbdcccd4f/edddd+sc//qEuXbro3nvvVWpqqu6//36lpaXpoYceCodgenq6evXqpT59+qh///7KysrS22+/rREjRmjcuHGaPn265s6dq8WLF6uoqEglJSXhj2rYunWrNmzYoK+++kp5eXl6+eWXNSswuz72nA7ntAm+b4k9hmFa6OQVBcM/K1Zt3RP+M7EHJDeb2HtHt/h8xB7QQoVib9XWPTHyioL6ZMEizZ2/ULPnfKKZsz/SlBmzNH7SVI0eO14jRo3R0HdH6M23h2rgK1l6sW9/PdvrP3riqZ7q/q8eeviRR9XtAb/uTb1f/+jUWZ3u7qJr/nitbr/9dj366KPhwzW7d++ubt26qUuXLrr99tt100036YYbbtBf//pXtWvXTtddd52uu+46/eUvf1G7du10/fXX64YbblDHjh31t7/9TTfffLNuu+023Xnnnbr77rt17733Ki0tTY888oieeOIJPffcc3rxxRf1yiuv6J133tGYMWM0ffp05efn64svvtCKFSvCH8i+adMmrV27VkuXLtWsWbOUmZmpBQWLtG//Qe395oCr4CP2GIZpqZNXFLT9uUHsAcmNlT3AMKHYW711T61te8J/zisKak7+AgU+mqtpM3OVM2W6xk2cpFFjxoYjL+v1N5XZ72U9/WwvdX+8R23c3Xe/7u7SVbfefof+dvMt+uv1HXT1H67RlW2u0iWX/lbt27fXAw88oB49eujJJ5/Uo48+qvvvv1+dOnXSLbfcovbt2+tPf/qTrr76al111VX6/e9/ryuuuEJXXHGFWrdurdatW+vKK69UmzZtdNVVVyklJUXXXHONrr32WrVr104dOnTQzTffrDvuuENdu3bVAw88oMcff1y9evXSyy+/rLfffltjx47VzJkztWDBAhUWFmrVqlVav3691q1bp1WrVmnx4sWaPHmynnn2Wa1cvUZ7vzmgXXv2xQ0+Yo9hGFMmryhY/3PDgtgDkhuxBxgmHHvb9sTIKwpqVt7HmjYzV+MnTdWoD8bp3ffe11tDhurVwW+o70sD1btPhp56+lk99H+P6p/3puqOO+/STTf/XTfc2FF/addO1/75L0q5+g+6onVrXXLpb/Wb31ygK6+8Ul27dtWjjz6qf/3rX3r00UfVrVs3derUSTfffLPatWunP/zhD2rTpo0uv/xyXXrppbr44ovVqlUrXXTRRWGtWrXSJZdcoksvvVSXXXaZLr/8cl1xxRW68sordfXVV+vPf/6zbrjhBt16663q2rWrHn74YT3zzDN66aWXNHToUI0fP155eXlauHChli1bppUrV2rFihX68ssv9cknn2j06NHq0aOHSjdvVUVllXbsrNauPfsSfv0esccwTEudvKKg7c8NYg9Ibr7TMlfrwgsv1EX+4fL5fLr1HWIPaMlCsbdm254YeUVBTZlee9jm+x98qGEjRunNIUP1StbrGvBKljL6vaRevV/Qkz2f0aOP/Uv3pz2ozl3/qTvv+oduv+NO3XLrbfr7bbfrho5/05+vuy4cfa0uvlg33XSTunXrpu7du+uRRx5RWlqaunTpor///e9q3769/vjHP+qqq67S7373O1166aURoXfhhRfqvPPO0znnnKNf/PKXOvvss/XrX5+jCy64QK1atdKll16q3/72t7riiivUtm1b/fnPf1bHjh3VqVMn+f1+Pf300xo4cKCGDx+uyZMn6+OPP9bixYu1dOlSLVmyRAUFBZoxY4befPNNPftcL23Ztl0l6zdo87btqtixU9W79mj33m+iVvdig4/YYximpU5eUdD25waxByS3upW9ycq48SJW9gADhGKvePseFW/fozUWeUVB5UydoQ9zpuj9Dz7UiPfH6O2h7+rNt9/R62+9razX39CgrMHq9/Ig9cnsp17/eV49n3lOTzzVUz2eTNejj/1L/of/T/fcV7vid8ONHfWHa/6oiy++RG3atNGdd96pbt266aGHHtKDDz6oe+65R3fccYc6duyov/zlL0pJSVHr1q3Dq3sXXnihfvnLX+m0007TKaecopNOOknHH3+8jj32WJ1wwgk6+eSTddZZZ+m8884Lr/r99re/VevWrXXNNdfohhtuUKdOnfTQQw+pV69eysrK0siRIzV16tTwB7Hn5+crEAho9OjR6tWrl958621tKN2sFavWqGT9Bm3cvFVl5UFVVtWED+t0ev0esccwTEudvKJgxM+N0J+JPSC51R/GOSuD2AMMUB97e2PkFQU1I/cjTZs1W1NnBDRh8jSNnTBJYydM0phxEzTmwwkaM2683v/gQw0fNVrZI0Yqe8RIDckerjf/+45eHfyG+r00UL16P69HHntcXf55j9p3uEG///2V+sUvfqHf//736tChg2666Sbdcsst+tvf/qbrr79e1157rdq2bavWrVvrsssu0/nnn68zzzxTJ598so477jgdc8wxOvbYY2Mcd9xxOvbYY3XiiSfq9NNP17nnnqtLLrlEl112WTj4brzxRt19993q3r27XnjhBb3++ut6//33NWnSJE2fPl1Tp07VmDFjNHjwYKXef78Csz/S18tXavmKVVpTsk7rNpaqdMtWbSsrV7CyStW79mjPvv22wUfsMQzTUqc29mJ/bhB7QHLjNXuAYUKxV1K2VyXbI+UVBVXw2RLNX/iZ5i/8LPzOnHPnL9Sc/E/1yfyF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" /> <br />
<br />
Now you can monitor any local process as shown in above image or you can monitor any process on remote machine. Monitoring process on remote machine involves some additional steps, we consider here to monitor tomcat on remote server as:<br />
<br />
<ol style="text-align: left;">
<li>Go to tomcat folder and locate setenv.bat file(if it does not exist then create an empty file in conf folder). Then add the below lines in setenv.bat file.</li>
<ol>
<li><pre><code>set CATALINA_OPTS=-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=PORT number
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false </code></pre>
<pre><b><code> </code></b></pre>
<pre><b><code>If you want to further authenticate the monitoring then follow the link</code></b></pre>
<pre><code>https://tomcat.apache.org/tomcat-8.0-doc/monitoring.html</code></pre>
</li>
</ol>
<li> Restart tomcat server.</li>
<li>Open JConsole on you system. Select "Remote Process" and enter IP address of remote server with port you have given in step 1.<br /><code> </code></li>
<li><code><img alt="" src="data:image/png;base64,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1aulVnr1S2/Ygj8YdA4YdLTSS68F6dWrpVZ69Utv2II/ygbdM888Iy+++GKjj6vuMOi40aGXXnrptdZrqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuCPskG3efNmefzxxxt9XHWHQceNDr300kuvtV5LrfTql96wBX/wCJ0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuAPBp0DBh2t9NJrQXr1aqmVXv3SG7bgDwadAwYdrfTSa0F69WqplV790hu24A8GnQMGHa300mtBevVqqZVe/dIbtuCP8kF3yYfkxUsvbvRx1R0GHTc69NJLL73Wei210qtfesMW/JHyCN02efH//W6jj6vuMOi40aGXXnrptdZrqZVe/dIbtuAPnnLpgEFHK730WpBevVpqpVe/9IYt+INB54BBRyu99FqQXr1aaqVXv/SGLfiDQeeAQUcrvfRakF69WmqlV7/0hi34g0HngEFHK730WpBevVpqpVe/9IYt+CN90G2+rdHHVXcYdNzo0EsvvfRa67XUSq9+6Q1b8Af/bIEDBh2t9NJrQXr1aqmVXv3SG7bgD55y6YBBRyu99FqQXr1aaqVXv/SGLfiDQeeAQUcrvfRakF69WmqlV7/0hi34g0HngEFHK730WpBevVpqpVe/9IYt+INB54BBRyu99FqQXr1aaqVXv/SGLfiDQeeAQUcrvfRakF69WmqlV7/0hi34g0HngEFHK730WpBevVpqpVe/9IYt+INB54BBRyu99FqQXr1aaqVXv/SGLfiDQeeAQUcrvfRakF69WmqlV7/0hi34g0HngEFHK730WpBevVpqpVe/9IYt+INB54BBRyu99FqQXr1aaqVXv/SGLfiDQeeAQUcrvfRakF69WmqlV7/0hi34g0HngEFHK730WpBevVpqpVe/9IYt+INB54BBRyu99FqQXr1aaqVXv/SGLfiDQeeAQUcrvfRakF69WmqlV7/0hi34g0HngEFHK730WpBevVpqpVe/9IYt+INB54BBRyu99FqQXr1aaqVXv/SGLfiDQeeAQUcrvfRakF69WmqlV7/0hi34o2zQdXV1ybZt2xp9XHWHQceNDr300kuvtV5LrfTql96wne5E0SONPoQJwyN0Dhh0tNJLrwXp1aulVnr1S2/Y+iBthE10mDHoAoBBx40OvfTSS6+1Xkut9OqX3rD1AYNuFAadAwYdrfTSa0F69WqplV790hu2PnANupUrd8vMmVvkwx/+FxERefrpEzJvXpecddYW2bjxqIiIdHcPygc/+FOZN6+LQRcCDDpudOill156rfVaaqVXv/SGrQ9cg66p6VE5cWL8ci+4oFtefvnf5NChN4sjb8GCn8nPfvbrzPMKBQadAwYdrfTSa0F69WqplV790hu2PpgxY7OMjPym+OeRkd9IU9OjIiJy0009MmvWY7Ju3SERGR14UfSIRNEjMmPG5uLbCjDoAoBBx40OvfTSS6+1Xkut9OqX3rD1wcKFP5eOjj0yMvIbGRn5jXR07JGFC39efP+RI28VR9v55z8p27cfT5x+3rwuefHFU9Lf//8x6EKAQceNDr300kuvtV5LrfTql96w9cHevW/I0qVPS3Pzo9Lc/KgsWfKU7N37hoiInHvuz6Sp6VH5+td/JSIi27cfL75t8eLtIiLywx8ekaamR2XZsmcZdCHAoONGh1566aXXWq+lVnr1S2/Ygj8YdA4YdLTSS68F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l96wBX8w6Bww6Gill14L0qtXS6306pfesAV/MOgcMOhopZdeC9KrV0ut9OqX3rAFf5QNuvPOO08W5O5p9HHVHQYdNzr00ksvvdZ6LbXSq196wxb8kfII3U+kY9mCRh9X3WHQcaNDL7300mut11IrvfqlN2zBH+lPudzS0ejjqjsMOm506KWXXnqt9VpqpVe/9IYt+IPfoXPAoKOVXnotSK9eLbXSq196wxb8Uf47dCvuYtCNwaCjlV56LUivXi210qtfesMW/FE26Facd54sWMDv0Ikw6Gill14b0qtXS6306pfesAV/8Dt0Dhh0tNJLrwXp1aulVnr1S2/Ygj8yfoduS6OPq+4w6LjRoZdeeum11muplV790hu24I/UQbelY1mjj6vuMOi40aGXXnrptdZrqZVe/dIbtuCP9H9YfBlPuRRh0NFKL702pFevllrp1S+9YQv+4J8tcMCgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOVXnotSK9eLbXSq196wxb8waBzwKCjlV56LUivXi210qtfesMW/MGgc8Cgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOVXnotSK9eLbXSq196wxb8waBzwKCjlV56LUivXi210qtfesMW/MGgc8Cgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOVXnotSK9eLbXSq196wxb8waBzwKCjlV56LUivXi210qtfesMW/MGgc8Cgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOVXnotSK9eLbXSq196wxb8waBzwKCjlV56LUivXi210qtfesMW/MGgc8Cgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOVXnotSK9eLbXSq196wxb8waBzwKCjlV56LUivXi210qtfesMW/FE26Lq6umTbtm2NPq66w6DjRodeeuml11qvpVZ69Utv2II/eITOAYOOVnrptSC9erXUSq9+6Q1b8AeDzgGDjlZ66bUgvXq11EqvfukNW/AHg84Bg45Weum1IL16tdRKr37pDVvwB4POAYOOVnrptSC9erXUSq9+6Q1b8AeDzgGDjlZ66bUgvXq11EqvfukNW/AHg84Bg45Weum1IL16tdRKr37pDVvwB4POAYOOVnrptSC9erXUSq9+6Q1b8AeDzgGDjlZ66bUgvXq11EqvfukNW/AHg84Bg45Weum1IL16tdRKr37pDVvwB4POAYOOVnrptSC9erXUSq9+6Q1b8AeDzgGDjlZ66bUgvXq11EqvfukNW/AHg84Bg45Weum1IL16tdRKr37pDVvwB4POAYOOVnrptSC9erXUSq9+6Q1b8AeDzgGDjlZ66bUgvXq11EqvfukNW/AHg84Bg45Weum1IL16tdRKr37pDVvwR9mgO++882TBggWNPq66w6DjRodeeuml11qvpVZ69Utv2II/eITOAYOOVnrptSC9erXUSq9+6Q1b8AeDzgGDjlZ66bUgvXq11EqvfukNW/AHg84Bg45Weum1IL16tdRKr37pDVvwB4POAYOOVnrptSC9erXUSq9+6Q1b8AcviuKAQUcrvfRakF69WmqlV7/0hi34g0foHDDoaKWXXgvSq1dLrfTql96wBX8w6Bww6Gill14L0qtXS6306pfesAV/MOgcMOhopZdeC9KrV0ut9OqX3rAFfzDoHDDoaKWXXgvSq1dLrfTql96wBX8w6Bww6Gill14L0qtXS6306pfesAV/MOgcMOhopZdeC9KrV0ut9OqX3rAFfzDoHDDoaKWXXgvSq1dLrfTql96wBX8w6Bww6Gill14L0qtXS6306pfesAV/MOgcMOhopZdeC9KrV0ut9OqX3rAFfzDoHDDoaKWXXgvSq1dLrfTql96wBX8w6Bww6Gill14L0qtXS6306pfesAV/MOgcMOhopZdeC9KrV0ut9OqX3rAFfzDoHDDoaKWXXgvSq1dLrfTql96wBX8w6Bww6Gill14L0qtXS6306pfesAV/MOgcMOhopZdeC9KrV0ut9OqX3rAFfzDoHDDoaKWXXgvSq1dLrfTql96wBX8w6Bww6Gill14L0qtXS6306pfesAV/MOgcMOhopZdeC9KrV0ut9OqX3rAFfzDoHDDoaKWXXgvSq1dLrfTql96wBX+UDbquri7Ztm1bo4+r7jDouNGhl1566bXWa6mVXv3SG7bgDx6hc8Cgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOVXnotSK9eLbXSq196wxb8waBzwKCjlV56LUivXi210qtfesMW/MGgc8Cgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOVXnotSK9eLbXSq196wxb8waBzwKCjlV56LUivXi210qtfesMW/MGgc8Cgo5Veei1Ir14ttdKrX3rDFvzBoHPAoKOV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" /> </code><pre><code> </code></pre>
<pre><code> </code></pre>
<pre><code> </code></pre>
</li>
</ol>
</div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-19075758210809390072019-03-15T02:51:00.000-07:002019-03-15T03:00:07.332-07:00OTRS Rest API integration<div dir="ltr" style="text-align: left;" trbidi="on">
OTRS is a tool to log tickets online. This is very basic requirement to log tickets and track them online. OTRS gives this functionality but if you want to integrate this functionality in you application then OTRS provide you with some basic API's like to create ticket, get ticket by id, update ticket, search ticket. Please follow below screenshots to enable in it your OTRS tool. Here we are assuming that OTRS tool is already installed.<br />
<br />
<ol style="text-align: left;">
<li>Login in OTRS with admin user.</li>
</ol>
<img alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArcAAAHpCAYAAACY8RRtAAAgAElEQVR4nO3db29c9Z338fNY+hTmQXBjb8RXon0C3GNpcntVibruIhDiuhqqVitVWskkkKxYqUsqbW5RGew0VDFcIBq0aBFr/rTXkoT4bzKZPzH5XjfO/DkznrF9wOMz55fXS3qreGyPx1H760cnxyZrNBohSZIkpVBW9QuQJEmSTirjVpIkSclk3EqSJCmZjFtJkiQlk3ErSZKkZDJuJUmSlEzGrSRJkpLJuJUkSVIyGbeSJElKJuNWkiRJyWTcSpIkKZmMW0mSJCWTcStJkqRkMm4lSZKUTMatJEmSksm4lSRJUjIZt5IkSUom41aSJEnJZNxKkiQpmYxbSZIkJZNxK0mSpGQybiVJkpRMxq0kSZKSybiVJElSMhm3kiRJSibjVpIkSclk3EqSJCmZjFtJkiQlk3ErSZKkZDJuJUmSlEzGrSRJkpLJuJUkSVIyGbeSJElKJuNWkiRJyWTcSpIkKZmMW0mSJCVTFgVVvxhJkiTpxzQybgEAoM6MWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3wKl5/5dZZL98v9oX8dcrcTZ7MSp+FSfg27jy91lk2RF/pn9+MbK/vxLfnt4LA6iUcQucGuP2JL0fLx7n+zBugaeMcQucmkPH7V+vxNmsdyVybLR9e/Vs7/Gz8eIvzxaeo3D1MsvixT8Xn6vwHIOB9368OOVrDD7uwPvzrzF47ng/XszOxpW/Ft+e9JxTHp/6fY5+L2evfnvI48XnPhtX1qd9v2HcAk8d4xY4NdPHbT7W+oPu/V9mw0H21ytxdjAme6Ou9xwjH/fnF/Oh99c4ZNxOeN/IaxiO1m+vnu29nsPG7ej7vr3aH97THs9ff//x4usffkz/a+SvcdrjI6/jsO/XuAWeMsYtcGqmjtvxcVYYtKPjbvqA7L999uq3JzJuhw4Zt9Oea9rjf35xwlXcSSO28NWnPG7cAkxm3AKnZuq4HR99heE2/jnTroL2n/+Hj9sYvWVgMAgPGbcHXve076f4eDbWcFC//8sJt1hMfdy4BZjEuAVOTVVXbr+9evZ447Zg6tcp3ibxQ67cHmtoTruKXHx8+rgd+X6NW+ApY9wCp+Z077ntD9LeD2QdNW4nDMTiPbf9r5n/cNvo6xm5t7bwg2vHerz3NQdXnQd/Hoc/fnDcTvl+jVvgKWPcAqem+Nfrg/pj91i/LeHFuHL1GL8tYeRzzsaVq8WB1/9NAwcH7vBzstFBWHhtZ69eGb2qOu11H+vxab91Yfz2gyNuSzjs+y2M29GhDJAm4xaokcKtBwAwgXELzLfxH8Kq+l8CAcBcM24BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxm3N3blzR5KkZIOyjNuaq/rQkSRplkFZxm3NVX3oSJI0y6As47bmqj50JEmaZVCWcVtzVR86kiTNMijLuK25qg8dSZJmGZRl3NZc1YeOJEmzDMoybmuu6kNHmrduv/F8PPPMM4Oef+P28P2fvhnPF9432vPx5qd3YuWVKe9/ZWXsa63EqxM+f+pr++OrE79e1X9e0rwHZRm3NVf1oSPNUyuvPBPP/MObcXvw2O148x/GH+v16Zvx/ISBufLKhCHbG8Wv/rH/WD5sDw7n6YP19hvPTxjIko4KyjJua67qQ0eam/74ajzzzKuxcuB9+RAdDtNeZcbt+OOHfO7I4D3m+yRND8oybmuu6kNHmpemjdKp7/sx43bSldtDy68gHxjY/UZuWXC7glQMyjJua67qQ0eaj/LxOG1s3n7j+YO3Jvyo2xLuHLiHdupwvXMnDt6fW3ytK/Fq8XX88dXJt1FIT2lQlnFbc1UfOtJ8dMLjdsIPlB12lXb4OVOuuo6P45G3e8PX/bjSxKAs47bmqj50pHlpVrcl5L99YdK9vFO+zjGvuk66zWH6b2aQnt6gLOO25qo+dKS5aYY/UDY+Wqf95oOJV4inNPUHzCbdAiE9xUFZxm3NVX3oSPPUzH4V2PgPkPUG6Og4PeSHzMaH9x9fHd7CcOB1jN2DKz3lQVnGbc1VfehI89ah/xKHYiV/W0L/ecd/1+2xf6jssB9AG3ufXxkmDYOyjNuaq/rQkSRplkFZxm3NVX3oSJI0y6As47bmqj50JEmaZVCWcVtzVR86kiTNMijLuK25qg8dSZJmGZRl3NZc1YeOJEmzDMoybmuu6kNHkqRZBmUZtzVX9aEjSdIsg7KM25prNpuSJCUblGXc1lzVh44kSbMMyjJua67qQ0eSpFkGZRm3NVf1oSNJ0iyDsozbmqv60JEkaZZBWcZtzVV96EiSNMugLOO25qo+dCRJmmVQlnFbc1UfOpIkzTIoy7ituaoPHUmSZhmUZdzWXNWHjiRJswzKMm5rrupDR5KkWQZlGbc1V/WhI0nSLIOyjNuaq/rQkSRplkFZxm3NVX3oSJI0y6As47bmqj50JEmaZVCWcVtzVR86kiTNMijLuK25qg8dSZJmGZRl3NZc1YeOJEmzDMoybmuu6kNHkqRZBmUZtzVX9aEjSdIsg7KM25qr+tCRJGmWQVnGbc1VfehIkjTLoCzjtuaqPnQkSZplUJZxW3NVHzpKo7c/6MSlG11Jp9zbH3Qq/9//vAdlGbc1V/Who/r39gedWPrNSlz97WuSTrml36wYuEcEZRm3NVf1oaP6d+lGN67+9rXY2dmJ3d3d2NvbiwcPHkiaUXt7e7G7uxs7Oztx9bevxaUb3crPgXkOyjJua67qQ0f1rz9ud3d34+HDh9FqtaLdbkuaUa1WKx4+fBi7u7vG7TGCsozbmqv60FH964/bBw8eRKvVim63G/v7+5JmVLfbjVarFXt7e8btMYKyjNuaq/rQUf0rjtt2ux37+/vx5MmTE6vRaJzo80l17vvvv4/Hjx9Hu92OBw8eGLfHCMoybmuu6kNH9W/auD0pjUbjxJ4L6u7Jkyexv79v3JYIyjJua67qQ0f1r9y4vR/Xzjfi4sfH/++ocQtD/XHb6XSM22MGZRm3NVf1oVPPVmIxy2Lx3dHHN5bPRPbCyhy8vtPNuIXTY9yWD8oybmuu6kOnnq3GUpbF0tro419dXohscXUOXt/pNnncfhfXzjei0eh1/lrcj4jBuP3DtbjQe9+FP9wv/Dfyk7jY/5zGxfgkjFsoMm7LB2UZtzVX9aEzP+VXY4935fUY4/bz5TiTZZFlWWTZmVj+fPhxKy/0H8/izPJG7/GNWD6bxZmzZyLLslh8N3978YXFwceOvLZ3C48XriKvvJDFmeXl/Hvpfc7G8pkSr6P/HBvH+HPImzRuP3mtEY1ff9L7b1k+WPOrtfd7ozcfrnH3WlxoXIhrd4fv61/Vvf+HC9H49SfGLRQYt+WDsozbmqv60Km+jVg+eyaWP/86Lp3LYuHy1/noO3TkHjVu82G6dKMb3W43ujeWIvt5/nwby2ciO3c5vul2o/vl5VgYDNOv4tK5LLLFteh2u9Fp994+dyn/2BtLkWUL+Tj9fDnOZAtx+cv8+b95YyGyc8ux0WzG6mIWWbYUq4Xn7z/n2mJ2jNfRjHanG91O69h/hkffllAcrfk/F6/WfvLr3tt3r8WF/ugtMG5hyLgtH5Rl3NZc1YdO5X3+ej4Axzv3emxM/byjxm0+TAfvb3ei22lHs7kRr5/LYuGNb6LVbEaz1Ym1xSwWLm0MPmfh8te95+u93f/Y9mosZQtx6Yv887rdbnRa+fO31pYiO3cpvmr2xu3iarSbzWi28s+5vNGOZrMZXxfG9/TXUf7PcOK4vfP24LaDfsVxW7zndjBuP744vKJbYNzCkHFbPijLuK25qg+dyusNxcFVzv7VzG4nH34TO2rctqLTXYulwVhejJVmMwZXZ8eH9OJ7MRzE/Sum428Xxm1z9JaCfIwPx+1wII9+zvj4nvw6yv8ZThq3b49cnT3sym3hbVdu4UjGbfmgLOO25qo+dOaj/H7bhTfW4vK549x3+/Xoldle7/WumuZvt6PTLdyWcHY5NvqDtX+7Qr9OOw5c7T3wdmGovrsYWbYUa8XnHxm3Xx38nOaEK8sTX0f5P78jx+3HFw9cuR38gNnIPbfFe3N799yev2bcQoFxWz4oy7ituaoPnerL74/Nzl2Obzrt6PSu4B7+A1Wt/K//e/e5NpvNaH6+HAtZFktr7cjHcuGHt9aWIltcjVazNXJ/bH9U51+rxLhdW8rvq+2//nPjV26PGreHvY7yf4YTb0v46OLwloRffzK89WDCb0sY+bVgd68Vbmfw2xJgnHFbPijLuK25qg+d6mv1rrB2Bvef5lcxD/+Bqnan9wNahb/WX7rRjU67Gc1mOzo3lgrvW4q13lXR1vjnLa71vlaJcdv+Jr/C3PsNCJduXI6FbCneax533B72Ok7mtyX4N5TBbBi35YOyjNuaq/rQqXPtzuhf6+fDtle7U3hfJ/8Br0mfN7gVIB/Zw+cYfzu/zSH/IbLW8JaHbjc67c7ga4z+poPi5+SDtnjrweTXMYvflvDjGLcwZNyWD8oybmuu6kNH9W/SuP3+++/jyZMnJ1Kj0Tix55JSaH9/P9rttnF7zKAs47bmqj50VP/643Zvby9arVZ0u914/Phx7O/vS5pB3W43Wq1W7O3tGbfHCMoybmuu6kNH9a8/bnd3d+Phw4fRarWi3W5Hu92OTqcj6QRrt9vRarXi4cOHsbu7a9weIyjLuK25qg8d1b/+uN3Z2Ynd3d3Y29uLBw8eSJpRe3t7sbu7Gzs7O8btMYKyjNuaq/rQUf17+4NOLP1mJa7+9jVJp9zSb1bi7Q86lZ8D8xyUZdzWXNWHjtLo7Q86celGV9IpZ9geHZRl3NZc1YeOJEmzDMoybmuu6kNHkqRZBmUZtzVX9aEjSdIsg7KM25qr+tCRJGmWQVnGbc1VfehIkjTLoCzjtuaqPnSURjdv3oz33ntP0il38+bNyv/3P+9BWcZtzVV96CiNbt26FZtbO7G5tRv3t/fi/vYDSTNqc2svNrd2Y3NrJ27dulX5//7nPSjLuK25qg8dpVE+bnfj/vbD+G77UdzbbvVqSzrBvttux3fbj+L+9sPY3N41bo8RlGXc1lzVh47S6NatW3F/e683bDtxd+dxr31JJ9rjuLfTie+2H8Xm9p5xe4ygLOO25qo+dJRG+bh9EPe2W5GP2u/jjqQZ1Bu42624v/3AuD1GUJZxW3NVHzpKo/Fxm/+f8BNJJ973cXdn37gtEZRl3NZc1YeO0mg4bttxd2c/jFtpVvXHbdu4PWZQlnFbc1UfOnVvY/lMZFk21plY/rz613b8NmL5bBZnljd+8HMYt9JpZdyWDcoybmuu6kOn7n11eSGyc5fjm243uv1uLEV2djk25uD1Ha+v4tK5LBYuf/WDn8O4lU4r47ZsUJZxW3NVHzpz2efLcSY73pXMfNxeiq+Kj//3pVjIluK9ZjP6V0UHV3WLo/fdxcLV3sVYOeTxjeUzkb2w0vsaK7GYZbH4buHj+8/be+3jz7nyQhZnzuZXmfvf18oL/df0i1gqjNuVF8pfxR0ft3/5l/+VP/fCm/GXnSdx5z/fjL/Lssiys/HP//kk7uzcjH/svc5/fCf/P+3/+Fnv9fzsZtzZeRJ/+ZezI88x/vZxnlNKL+O2bFCWcVtzVR8689VKLGaLsdJajaUsi6W1r4786/pJ43bjUv7Y183egFxc613VXYulLItfvNv/Wgtx+cv8au83byzEwvLG1MdbG5dj4dzrvQH7eiycW4ilSxuDr7fwxjfR6o3ehTe+iW63G2uLwzG9upgNrzB3Wr3bKZZirduN7peXYiEbjtt2J/+YMn92o+P2b/HPC/2BnQ/PwTDNsvi7f/mfuPPOPw0H/M9uRnGYZtk/xX/s/M/Yc4y/fZznrHqESLPIuC0blGXc1lzVh85c9e4vJtw/m0W2+N7Uz/nq8sKEz1mKtW4nWs3+UGz3Pv7ruHQui6W1ZjSbq7GULcSlL/LnaQ0G5ZTHW/njr3/ejObqUizdWIulc6/HRnMjXj+3EJc3WvnozZZirTdM2xuXY6H3OauLWWSLq9Hqve73FvMR3G42o9nqxNriyd6W4MqtNKuM27JBWcZtzVV96MxV7c7wntmscMV1ME4PNvGe224nH43N5thtAnn5uG1H58vLsXDgdoXpj68uZrG02oyVny/Epf/+Oi6dW4r3mu/FUrYUq61mNFeXIsuWYrX/tVvDoby6mMXC5a97r3sjXh+7x3b1hMete26lWWXclg3KMm5rrupDZ+7qjdGlG/ktBEfdezrxnttB+f22/dsEut1v4vLgym0zmq3OYBB/88bC8J7aKY+315Zi4dJKvH5uKVZbrVhdXIjXl38R2eJqPqZ79/oOxu3nr8fCyLjtj9fWgTFr3Ep1ybgtG5Rl3NZc1YfOfJXfs5otrkWn3Y5O7wru4Ae3JnT4uB37LQS92x6W1pq9ET38ga+vLi/kV1anPd5s5uP13EIs9O7nba8t5ffervWuLPfuFV7o/8DYz3v32bYOjtf22lJk2S/yr/P58sg9tz8k41Y6rYzbskFZxm3NVX3ozFft6BRvQ+jdptBpT/+cw8dtazCQsyyL7Oer+b2tlzai2erkV2X77zt3Ob7ptKY/3mxGs5Vf+c1/eKw5vFLbLrz+4i0NhXt/D1yZbef32fY/7vIbCyf62xKMW2lWGbdlg7KM25qr+tCpe61Ofo9ta9rHtIe3GHQ77ZHfRJB/7vA+3dbIcx58vNls9cZ3f+x2Ru/vHTx28N7fSb8Bod0Zflyn8P4f/9sSjFtpdn0fd3ceG7clgrKM25qr+tBRGvXH7Xfb7bi78zjuDAaupJPs7o5xWzYoy7ituaoPHaXRrVu3YnNrL77bfhT3djpxd+dx3N3Zl3SiPY582Hbiu+1W3N/eM26PEZRl3NZc1YeO0igft7txf/thPnC3W73akk64fNg+iM2tXeP2GEFZxm3NVX3oKI3ycbsTm9u7sbm9F/e3H0iaWXuxubUbm1vbxu0xgrKM25qr+tBRGt26dUtSRVX9v/95D8oybmuu6kNHkqRZBmUZtzVX9aEjSdIsg7KM25qr+tCRJGmWQVnGbc1VfehIkjTLoCzjtuaqPnQkSZplUJZxW3NVHzqSJM0yKMu4rbmqDx1JkmYZlGXc1lzVh44kSbMMyjJua67qQ0eSpFkGZRm3NVf1oSNJ0iyDsozbmqv60JEkaZZBWcZtzVV96EiSNMugLOO25qo+dCRJmmVQlnFbc1UfOpIkzTIoy7ituaoPHaXRhx9+WOuq/vOTNLugLOO25qo+dJRGH374YdX/Vf7BjFsp7aAs47bmqj50lEb9cbu1tVWrIoxbKfWgLOO25qo+dJRGxq2keQ3KMm5rrupDR2lk3Eqa16As47bmqj50lEbGraR5Dcoybmuu6kNHaWTcSprXoCzjtuaqPnSURsatpHkNyjJua67qQ0dpdJxx+8W/PheNxsvxp5Map2svR6PxXFz5L+NW0vSgLOO25qo+dJRGxxm3f3v7QjQav4oPT2rcdvYj4kk8fmTcSpoelGXc1lzVh47S6MeP2z/Fy41GNHo9969fDN73p1f6jz8XL79SuPpbvHLb++f8/fnHv7xm3EoybinPuK25qg8dpdGPG7dfxJXnGtE4fy3uR0R8fHE4TtdejkajERc/joj4Lv79fGP4HOu/ikbjQvz+6/4/N+L8te8i4n5cO9+Ixk+vxBfGrfTUB2UZtzVX9aGjNPpR4/a//i3ONxpx8aPH8WhrK7Y6d/Nx+qs/xRf/fj4ajYvxcWcrtrYexZ0/XDhk3F6It//fo9jaehQfvdaIxvnfx9+MW+mpD8oybmuu6kNHafSjxu3Xv48LjUb8ar3/2N/i9+cb0bj44YHPGXl7wrj9/df5x3140biVlAdlGbc1V/WhozT6UeP20Z14u3gbwdqr+a0I/7cdjz7Mb1H432v57Qv/9tPDbkswbiUdDMoybmuu6kNHaXT8cdsY7bkr8cXWo3j85JO4WHj8wh/ux35nK7Y6+/HJr/uP/zT+z2uu3EoqF5Rl3NZc1YeO0ug44/bR4ycH/wv4pHef7VY79kcefpR/3sgPlD2Ju9cK47b4q8DGfi1Ye7/43Mat9DQHZRm3NVf1oaM0mtm/oaz/w2WFq7oXP96P9gk9f4RxK6UelGXc1lzVh47SaHb/+t1HMX7Bd79zcs8fYdxKqQdlGbc1V/WhozSa3bidbRHGrZR6UJZxW3NVHzpKI+NW0rwGZRm3NVf1oaM0Mm4lzWtQlnFbc1UfOkoj41bSvAZlGbc1V/WhozQybiXNa1CWcVtzVR86SiPjVtK8BmUZtzVX9aGjNLpx40a88847tezGjRuV//lJml1QlnFbc1UfOpIkzTIoy7ituaoPHUmSZhmUZdzWXNWHjiRJswzKMm5rrupDR5KkWQZlGbc1V/WhI0nSLIOyjNuaq/rQkSRplkFZxm3NVX3oSJI0y6As47bmqj50JEmaZVCWcVtzVR86kiTNMijLuK25qg8dSZJmGZRl3NZc1YeOJEmzDMoybmuu6kNHkqRZBmUZtzVX9aEjSdIsg7KMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCJ+/eWxG/ezbi3kk82Ucn+FxPsc9eivjdS8O3bz4b8buf5F19q7rXBXDCjFvg5Bm386c4bu+9NTp0r/8k4vpH1bwugBNm3AIn79Bxey/i6k+GVw0/K7zreuHx6x+Nfez48/XeN/75/bc/e2nClcnxzykM5/5rvvqT0eFX/Lybbw2f82bhxRS/1sj3NPa9Dj5n0uNjI/7ms1Ne95Q/v0mv/17h9V4vjNubz46+/vGxC1Bjxi1w8g4bt9cLY/Ozl4Yf99lLY2Ou//mHXLm9+WzhiuNHB0ddcQwWx/LUcTs2loff0ITRODaKJ43Saa9v2uPFcX792YirL03+mEl/fgde/0ejg/r6pNEew+dxawKQCOMWOHlTx+34uOxfEb13yMA6ZNzee2t06PUH4/hzDf5K/hhXbg+72ly82nl97O3i15o4bguOfPxexPW38rc/K35vh/z5jb/+8aux067Ojt+LC1Bzxi1w8qYOxY8m34rQH4nFH3IaDMfD7rktXOEtXvUc+Sv9KAy7o8bttJE35RaIkauihYpfu/i+abdgFG8tuPpW/p/XP8qH5817hdsIDvnzG3/946N10vfndgQgQcYtcPJ+yJXbqR93xA+U3Xy2dy/s2LA7zpXbA7cXHDFux++Z7V9xPuxrD0z7PoqP38tvReiP2ntv5Vdwrxbff9iV20PG7KTvb9oVZIAaM26Bk/dD7rkdGVrHvOd28LV+MjrSjrrntv+xN58tN277r7v4/Y2M27GPG7l1Yey+2UmPR/TutS289uvPHrwSPPWe2+LrHxvkh91zC5AQ4xY4ecWf0h80dvWx9G8WOOJ+2PEfBJv42xLGXtvNkldur790xOt+NuKz4vN8NOW3KEx7PA5eCT5wb+9hvy1h0m0Hxe/VlVsgfcYtUG+nct/olAENwNwxboH66l+dnfnoNG4B6sK4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BSLETNcAAANQSURBVAAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gFACAZxi0AAMkwbgEASIZxCwBAMoxbAACSYdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEhGtrW1Ff0AAKDORq7cFoeuJEmSVLfclgAAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAyTBuAQBIhnELAEAyjFsAAJJh3AIAkAzjFgCAZBi3AAAkw7gF5tRm3F59J955p9h6bFT8qjbWV+P2ZvGRzbi9+kNf10asF7+/1duxOenxfusbEV+uT3588PqK7xt/rQDpM26BOXVwNG5+uhqrn1a71k5u3OYDdv3LwjN9uloYuMPHih8TX66P/Rlsxu3V3mv6cn1k6Mbm7Vgdez6A1Bm3wJw6bNyOXtVd/zJGhl1+9bL3uYPHi1dD+8+7Eeurq7E6uPo56WN6o7P32PqUcbu+Pvp5G+uF4To+OnuPTRrqI58XJcetMQtg3ALzasJtCb3htvnpamEsbsT6O+uxMfjPfOyt9gZffyyOjMbBCOx/Tu+ZJn3MyGDciPUDf9Wfv87+5w0G+NjYHhmoMWG0Tnl80rgdvy1hZOxu3s7HutsSgKeUcQvMqel/3T86+IZXLvMRuRHrq7dj49PV/J8Hg3fS/bv5x24OnmfCx4xddT3ytoTN27G6vjF8fNrV1JO4cnvkldrR8Q7wNDBugTl1+Lg9eOU28uG3ujr4wavV9fXe0Jx89TRGxu2UjxkZkIVbAEZe5/Cx4n3Bm5/mV5An3yd8QvfcFsb3wXuSf8wPuwHUk3ELzKnDhtmEe24jBn8lv/rp5uCfh8Nw0m8mGB230357wfCe2+HtDqOvZTVWV0c/Z/h6Drs1YNpvSyg8+5H33OajvP/Y6G9LmDToAdJm3ALMih/wAjh1xi3ALPR+8MuVU4DTZdwCAJAM4xYAgGQYtwAAJMO4BQAgGcYtAADJMG4BAEiGcQsAQDKMWwAAkmHcAgCQDOMWAIBkGLcAACTDuAUAIBnGLQAAycgiyyLL/wMAAGrt/wPld/SGWxZaiQAAAABJRU5ErkJggg==" /> 2. Goto "Admin" tab.<br />
<br />
<img alt="" src="data:image/png;base64,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" /> <br />
3. Find WebService link as:<br />
<br />
<br />
<img alt="" src="data:image/png;base64,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" /><br />
4. Click on WebService.<br />
<br />
<img alt="" src="data:image/png;base64,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" /><br />
<br />
5. Click on "add web service".<br />
<br />
<img alt="" src="data:image/png;base64,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" /><br />
6. Click on "Import web service" and choose file from desktop (use Test.yaml file given below)<br />
<img alt="" src="data:image/png;base64,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" /><br />
<br />
Test.yaml file<br />
<br />
---<br />
Debugger:<br />
DebugThreshold: debug<br />
TestMode: '0'<br />
Description: Is used by me<br />
FrameworkVersion: 4.0.5<br />
Provider:<br />
Operation:<br />
TicketGet:<br />
Description: ''<br />
MappingInbound:<br />
Type: Simple<br />
MappingOutbound:<br />
Type: Simple<br />
Type: Ticket::TicketGet<br />
TicketUpdate:<br />
Description: ''<br />
MappingInbound:<br />
Type: Simple<br />
MappingOutbound:<br />
Type: Simple<br />
Type: Ticket::TicketUpdate<br />
TicketCreate:<br />
Description: ''<br />
MappingInbound:<br />
Type: Simple<br />
MappingOutbound:<br />
Type: Simple<br />
Type: Ticket::TicketCreate<br />
TicketSearch:<br />
Description: ''<br />
MappingInbound:<br />
Type: Simple<br />
MappingOutbound:<br />
Type: Simple<br />
Type: Ticket::TicketSearch<br />
Transport:<br />
Config:<br />
KeepAlive: ''<br />
MaxLength: '20000000'<br />
RouteOperationMapping:<br />
TicketGet:<br />
Route: /TicketGet/:TicketID<br />
TicketUpdate:<br />
RequestMethod:<br />
- POST<br />
Route: /TicketUpdate/:TicketID<br />
TicketCreate:<br />
RequestMethod:<br />
- POST<br />
Route: /TicketCreate<br />
TicketSearch:<br />
RequestMethod:<br />
- GET<br />
Route: /TicketSearch<br />
Type: HTTP::REST<br />
RemoteSystem: ''<br />
Requester:<br />
Transport:<br />
Type: '' <br />
<br />
It will expose the web service and you can test it with any client tool like POSTMAN etc<br />
<br />
You need to add parameter user name as UserLogin and password as password to access any api.<br />
<br />
Example of get API (GET)<br />
<span style="background-color: #fafafa; color: #505050; display: inline; float: none; font-family: "opensans" , "helvetica" , "arial" , sans-serif; font-size: 12px; font-style: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; word-spacing: 0px;">http://server address/otrs/nph-genericinterface.pl/Webservice/Test/TicketGet/Ticketno?UserLogin=username&Password=password</span><br />
<br />
Example of Create API (POST)<br />
<span style="-webkit-text-stroke-width: 0px; background-color: #fafafa; color: #505050; display: inline !important; float: none; font-family: OpenSans, Helvetica, Arial, sans-serif; font-size: 12px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px;">http://server address/otrs/nph-genericinterface.pl/Webservice/Test/TicketCreate?UserLogin=user name&Password=password</span><br />
<br />
<span style="-webkit-text-stroke-width: 0px; background-color: #fafafa; color: #505050; display: inline !important; float: none; font-family: OpenSans, Helvetica, Arial, sans-serif; font-size: 12px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px;">JSON in Body as: </span><br />
<span style="-webkit-text-stroke-width: 0px; background-color: #fafafa; color: #505050; display: inline !important; float: none; font-family: OpenSans, Helvetica, Arial, sans-serif; font-size: 12px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px;"> {<br /> "Ticket" : {<br /> "QueueID" : "1",<br /> "PriorityID" : "5",<br /> "CustomerUser" : "email id",<br /> "Title" : "REST Create Test",<br /> "State" : "open"<br /> },<br /> "Article" : {<br /> "ContentType" : "text/plain; charset=utf8",<br /> "Subject" : "Rest Create Test",<br /> "Body" : "This is only a test"<br /> }<br />}</span><br />
<br />
Example of update API (POST)<br />
<span style="-webkit-text-stroke-width: 0px; background-color: #fafafa; color: #505050; display: inline !important; float: none; font-family: OpenSans, Helvetica, Arial, sans-serif; font-size: 12px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px;">http://server address/otrs/nph-genericinterface.pl/Webservice/Test/TicketUpdate/22645?UserLogin=user login&Password=password</span><br />
<br />
<span style="-webkit-text-stroke-width: 0px; background-color: #fafafa; color: #505050; display: inline !important; float: none; font-family: OpenSans, Helvetica, Arial, sans-serif; font-size: 12px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px;">JSON in Body as: </span><br />
<span style="-webkit-text-stroke-width: 0px; background-color: #fafafa; color: #505050; display: inline !important; float: none; font-family: OpenSans, Helvetica, Arial, sans-serif; font-size: 12px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px;"> {<br /> "Ticket" : {<br /> "QueueID" : "1",<br /> "PriorityID" : "5",<br /> "CustomerUser" : "email id",<br /> "Title" : "REST Create Test",<br /> "State" : "open"<br /> },<br /> "Article" : {<br /> "ContentType" : "text/plain; charset=utf8",<br /> "Subject" : "Rest Create Test Update",<br /> "Body" : "This is only a test updated"<br /> }<br />}</span><br />
<br />
Example of searc API<br />
<span style="-webkit-text-stroke-width: 0px; background-color: #fafafa; color: #505050; display: inline !important; float: none; font-family: OpenSans, Helvetica, Arial, sans-serif; font-size: 12px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px;">http://server address/otrs/nph-genericinterface.pl/Webservice/Test/TicketSearch?UserLogin=user name&Password=password</span><br />
<br />
<br />
<br />
</div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-81513646234996795192015-12-28T04:56:00.002-08:002015-12-28T04:56:43.847-08:00MySQL ERROR - Specified key was too long; max key length is 767 bytes<div dir="ltr" style="text-align: left;" trbidi="on">
This is very old MySQL issue. MySQL engine like InnoDB or MyISAM has their own limit on the length of the columns where indexing can be applied. Usually it is 1000 for MyISAM and 767 for InnoDB. Problem occures when user try to change the length of the column where indexing was already applied or try to implement indexing on a column where length of column is already greater than 1000.<br />
This problem can be solved in two ways:<br />
<b><br /></b>
1. <b>Set the properties of MySQL engine. (It will only work for mysql 5.6+).</b><br />
<br />
<ul style="text-align: left;">
<li><span style="color: blue;">show engines;</span>(Get the current Engine - Only to check).</li>
<li><span style="color: blue;">show variables like 'innodb%';</span> (Get current engines properties)</li>
<li>Set properties as:</li>
<li></li>
<li><span style="color: blue;">innodb_large_prefix=on;</span></li>
<li><span style="color: blue;">innodb_file_format=barracuda;</span></li>
<li><span style="color: blue;">innodb_file_per_table=true;</span></li>
<li>Run the alter command.</li>
</ul>
<div>
<b>2. Set MySQL to no engine mode.</b></div>
<div>
<ul style="text-align: left;">
<li><span style="color: blue;">SELECT @@SESSION.sql_mode;</span><b> (Check current SQL mode)</b></li>
<li><span style="color: blue;">SET sql_mode = 'NO_ENGINE_SUBSTITUTION';</span> (<b>Set SQL mode to no engine)</b></li>
<li><b>run your alter command.</b></li>
<li><b>Again set back to engine mode</b></li>
</ul>
</div>
</div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-76159982124080031512014-10-06T05:13:00.002-07:002014-10-06T05:13:43.684-07:00Exceptions with method overriding in java<div dir="ltr" style="text-align: left;" trbidi="on">
In java methods can throw the different checked/unchecked exceptions, this seems to be simple as long as we are talking about the single methods in java but when we deal with method overriding in java the concept of exception which can be thrown by overriding or overridden method are bit tricky. The overriding method cannot throw the new/broader exception than the overridden method is throwing but this case is only true for checked exception and not true for unchecked/runtime exception. <br />
<br />If overriding method is throwing a checked exception which is new/broader than your overridden method exception then your code will not compile.<br />
<br />The combination of base class overridden method and derived class overriding method with respect to exceptions can be categorized into the below five cases as:<br />
<br />1. Base class method throwing no exception and derived class method is throwing exception.<br /> • In case of checked exception code will not compile<br /> • In case of runtimeException code will work fine.<br />
<br />2. Base class method throwing less newer/broader exception than derived class method is throwing. <br />
Suppose base class overridden method is throwing ArithmeticException and derived class overriding<br />
method is throwing general Exception so then code will not compile.<br /> • In case of checked exception code will not compile<br /> • In case of runtimeException code will work fine.<br />
<br />3. Both base and derived class overridden method throw same exception<br /> • Code will compile and run perfectly in both cases of checked and unchecked exception.<br />
<br />4. Base class overridden method throwing newer/broader exception than derived class overriding method.<br />
Suppose base class overridden method is throwing general Exception and derived class overriding<br />
method is throwing ArithmeticException so then code will compile and work fine.<br /> • Code will compile and run perfectly in both cases of checked and unchecked exception.<br />
<br />5. Base class overridden method is throwing exception but Derived class overriding method is not <br />
throwing exception.<br /> • Code will compile and run perfectly in both cases of checked and unchecked exception.<br /></div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-66332730255404650532014-09-30T23:14:00.002-07:002014-09-30T23:14:38.905-07:00How to solve JSF issue view could not be restored<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Log Error : - </b>javax.servlet.ServletException: viewId:/mysettings/myinvoiceTemplates/BillingTemplate.html - View /mysettings/myinvoiceTemplates/BillingTemplate.html could not be restored.<br />
<br /><b>Issue : -</b> Sometimes when we open a JSF page in the application and then open some other page in new tab with right clicking on the existing page and work on new opened page for 2 or 3 minute. When we come back to the earlier page after 2 or 3 minutes and click on any button then we get this error in log that page could not be restored.<br />
<br /><b>Solution : -</b> It can be solved with two ways as below:<br />1). By default JSF store the state of the page at server side. We can change this to client by changing context parameter “state_saving_method” in web.xml as:<br /><context-param><br /> <param-name>javax.faces.STATE_SAVING_METHOD</param-name><br /> <param-value>client</param-value><br /></context-param><br />
<br />After changing the method to client, the state of the page is saved in a input hidden field at client side with the page. This will solve the above problem.<br /><b>Advantage :- </b><br />Lower the terrific to server because for page state container does not need to go to client side.<br /><b>Disadvantage : - </b>This can lead to more data download when we open the page because now page state is also stored at client side.<br /><br />2). Add one more context parameter in Web.xml file. It will re-create/restore the expired view. <br />
<br /><context-param> <br /><br /> <param-name>com.sun.faces.enableRestoreView11Compatibility</param-name> <br /><br /> <param-value>true</param-value> <br /><br /></context-param><br /></div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-69804371383956321262014-09-30T21:10:00.002-07:002014-09-30T21:12:45.148-07:00How to close the popup window by pressing escape key button or clicking outside of the popup window with jQuery.<div dir="ltr" style="text-align: left;" trbidi="on">
For closing the open popup window on the click of escape key or clciking outside the popup window, We need to create one jQuery method in every modal panel .xhtml file or any other .xhtml file which is used to show the popup window as:<br />
<br />
<span style="color: magenta;"><script type="text/javascript"><br /> jQuery(document).keyup(function (e){<br /> var clickedID = e.target.id;<br /> var unicode=e.keyCode? e.keyCode : e.charCode /*This will capture the key pressed event*/<br /> if(unicode==27){//Key code for escape key is 27<br /> Richfaces.hideModalPanel(#{modalPanelId});<br /> /*var win = window.open("","_self"); r<br /> win.close();*/<br /> }<br /></script></span><br />
<br />
The above method will automatically be called whenever we press any key and if pressed key is escape key then it would close the opened popup window so it will work when we press theescape key.<br />
<br />
To close popup window when we click on the outside of the popup window, we have to call “Richfaces. hideModalPanel(‘modelPanel Id’)” on “onmaskclick” event of rich:modalPanel as:<br />
<br />
<span style="color: magenta;">onmaskclick="Richfaces.hideModalPanel('#{modalPanelId}')"</span></div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0tag:blogger.com,1999:blog-7401188344172570023.post-73803874381824529422014-09-29T05:25:00.003-07:002014-09-30T20:59:18.841-07:00How to compile .JRXML file and produce .jasper file with JAVA code<div dir="ltr" style="text-align: left;" trbidi="on">
The Jasper Report design file specifies the layout and appearance of the report and they works best with the .JRXML extension files. We use iReport to deal with the jrxml reports but sometimes we need to compile JRXML file through our java code. We can do this with the help of net.sf.jasperreports package.<br />
Change the path of the JRXML and jasper files in below code and run this code to compile any JRXML file and generate jasper report. <br />
<br />
import net.sf.jasperreports.engine.JRException;<br />
import net.sf.jasperreports.engine.JasperCompileManager;<br />
<br />
<br />
public class compileJasper{<br />
<br />
public static void main(String[] args)<br />
{<br />
// below code will compile the jasper file which is located on path given below<br />
try {<br />
JasperCompileManager.compileReportToFile("PathOfTheJRXMLFile(which needs to be compiled)" ,"PathOfJasperFile(Where to save generated jasper file)");<br />
} catch (JRException e) {<br />
<br />
}<br />
}<br />
}</div>
Vikram Sharmahttp://www.blogger.com/profile/04231284281716140927noreply@blogger.com0