File tree 4 files changed +154
-0
lines changed
0001ReplacediagonalelementsineachrowofgivenMarixbyKthsmallestelementofthatrow
0003Findmaximumelementofeachrowinamatrix
4 files changed +154
-0
lines changed Original file line number Diff line number Diff line change
1
+ Question - Replace diagonal elements in each row of given Matrix by Kth smallest element of that row
2
+
3
+ ---------------------------------------------------------------------------------------------------------------
4
+
5
+ Approach: The solution is based on the concept of sorting. Follow the steps mentioned below:
6
+
7
+ Traverse the matrix row-wise.
8
+ Copy this row in another list.
9
+ Sort the list and get the Kth smallest element and replace the diagonal element with that.
10
+
11
+ Below is the implementation of the above approach.
12
+
13
+ ----------------------------------------------------------------------------------------------------------------
14
+ Given a matrix mat[ ] [ ] of size N* N and an integer K, containing integer values, the task is to replace diagonal elements by the Kth smallest element of row.
15
+
16
+ Examples:
17
+
18
+ Input: mat[][]= {{1, 2, 3, 4}
19
+ {4, 2, 7, 6}
20
+ {3, 5, 1, 9}
21
+ {2, 4, 6, 8}}
22
+ K = 2
23
+ Output: 2, 2, 3, 4
24
+ 4, 4, 7, 6
25
+ 3, 5, 3, 8
26
+ 2, 4, 6, 4
27
+ Explanation: 2nd smallest element of 1st row = 2
28
+ 2nd smallest element of 2nd row is 4
29
+ 2nd smallest element of 3rd row is 3
30
+ 2nd smallest element of 4th row is 4
31
+
32
+ Input: mat[][] = {{1, 2, 3}
33
+ {7, 9, 8}
34
+ {2, 3, 6}}
35
+ K = 2
36
+ Output: 2, 2, 3
37
+ 7, 8, 8
38
+ 2, 3, 3
Original file line number Diff line number Diff line change
1
+ // JavaScript code for the above approach
2
+ let N = 4 ;
3
+
4
+ // Function to print Matrix
5
+ function showMatrix ( mat ) {
6
+ let i , j ;
7
+ for ( i = 0 ; i < N ; i ++ ) {
8
+ for ( j = 0 ; j < N ; j ++ ) {
9
+ document . write ( mat [ i ] [ j ] + " " ) ;
10
+ }
11
+ document . write ( '<br>' )
12
+ }
13
+ }
14
+
15
+ // Function to return k'th smallest element
16
+ // in a given array
17
+ function kthSmallest ( arr , n , K )
18
+ {
19
+
20
+ // Sort the given array
21
+ arr . sort ( function ( a , b ) { return a - b } )
22
+
23
+ // Return k'th element
24
+ // in the sorted array
25
+ return arr [ K - 1 ] ;
26
+ }
27
+
28
+ // Function to replace diagonal elements
29
+ // with Kth min element of row.
30
+ function ReplaceDiagonal ( mat , K )
31
+ {
32
+ let i , j ;
33
+ let arr = new Array ( N ) ;
34
+
35
+ for ( i = 0 ; i < N ; i ++ ) {
36
+ for ( j = 0 ; j < N ; j ++ )
37
+ arr [ j ] = mat [ i ] [ j ] ;
38
+ mat [ i ] [ i ] = kthSmallest ( arr , N , K ) ;
39
+ }
40
+ showMatrix ( mat ) ;
41
+ }
42
+
43
+ // Utility Main function.
44
+ let mat = [ [ 1 , 2 , 3 , 4 ] ,
45
+ [ 4 , 2 , 7 , 6 ] ,
46
+ [ 3 , 5 , 1 , 9 ] ,
47
+ [ 2 , 4 , 6 , 8 ] ] ;
48
+
49
+ let K = 3 ;
50
+ ReplaceDiagonal ( mat , K ) ;
51
+
Original file line number Diff line number Diff line change
1
+ Given a matrix, the task is to find the maximum element of each row.
2
+ Examples:
3
+
4
+ Input : [ 1, 2, 3]
5
+ [ 1, 4, 9]
6
+ [ 76, 34, 21]
7
+
8
+ Output :
9
+ 3
10
+ 9
11
+ 76
12
+
13
+ Input : [ 1, 2, 3, 21]
14
+ [ 12, 1, 65, 9]
15
+ [ 1, 56, 34, 2]
16
+ Output :
17
+ 21
18
+ 65
19
+ 56
Original file line number Diff line number Diff line change
1
+
2
+ function maxelement ( no_of_rows , arr )
3
+ {
4
+ var i = 0 ;
5
+
6
+ // Initialize max to 0 at beginning
7
+ // of finding max element of each row
8
+ var max = 0 ;
9
+ var result = Array . from ( { length : no_of_rows } , ( _ , i ) => 0 ) ;
10
+ while ( i < no_of_rows )
11
+ {
12
+ for ( var j = 0 ; j < arr [ i ] . length ; j ++ )
13
+ {
14
+ if ( arr [ i ] [ j ] > max )
15
+ {
16
+ max = arr [ i ] [ j ] ;
17
+ }
18
+ }
19
+ result [ i ] = max ;
20
+ max = 0 ;
21
+ i ++ ;
22
+
23
+ }
24
+ printArray ( result ) ;
25
+
26
+ }
27
+
28
+ // Print array element
29
+ function printArray ( result )
30
+ {
31
+ for ( var i = 0 ; i < result . length ; i ++ )
32
+ {
33
+ document . write ( result [ i ] + "<br>" ) ;
34
+ }
35
+
36
+ }
37
+
38
+ // Driver code
39
+ var arr = [ [ 3 , 4 , 1 , 8 ] ,
40
+ [ 1 , 4 , 9 , 11 ] ,
41
+ [ 76 , 34 , 21 , 1 ] ,
42
+ [ 2 , 1 , 4 , 5 ] ] ;
43
+
44
+ // Calling the function
45
+ maxelement ( 4 , arr ) ;
46
+
You can’t perform that action at this time.
0 commit comments