Kth Largest Element in an Array
sort solution - # O(nlgn) time 28ms
|
|
heapq solution - # O(k+(n-k)lgk) time, min-heap 28ms
|
|
test code
|
|
ref
heapq
|
|
sort solution - # O(nlgn) time 28ms
|
|
heapq solution - # O(k+(n-k)lgk) time, min-heap 28ms
|
|
test code
|
|
ref
heapq
|
|
You are given an n x n 2D matrix representing an image.
Rotate the image by 90 degrees (clockwise).
Note:
You have to rotate the image in-place, which means you have to modify the input 2D matrix directly. DO NOT allocate another 2D matrix and do the rotation.
Clean Most Pythonic - 24ms
|
|
test code
|
|
ref
This syntax is a slice assignment. A slice of [:]
means the entire list. The difference between nums[:] =
and nums =
is that the latter doesn’t replace elements in the original list. This is observable when there are two references to the list
|
|
To see the difference just remove the [:] from the above sequence.
|
|
What does colon at assignment for list[:] = […] do in Python [duplicate]
Math Method
|
|
Write down your command in a sequence, “right, down, down, right, …” it will always be m+n-2 slots, u just need to insert n-1 “right” commands uniquely in this sequence,and that is just binomial coefficient of m+n-2 choose n-1.
DP Version
|
|
test code
|
|
Generators Version
|
|
Stack Version
|
|
dict version
|
|
Counter version
|
|
output
|
|