Hãy nói rằng tôi có các mảng sau:Cung cấp một proc đến một phương pháp như là một khối
arr = [[5, 1], [2, 7]]
và tôi muốn tìm các phần tử tối thiểu, so sánh phần tử thứ hai trong những yếu tố. Phần tử tối thiểu sẽ là [5, 1]
từ 1
nhỏ hơn 7
. Tôi có thể sử dụng đoạn mã sau:
arr.min {|a,b| a[1] <=> b[1]}
Để tính toán mức tối đa, tôi có thể làm điều tương tự:
arr.max {|a,b| a[1] <=> b[1]}
Điều đó cho [2, 7]
.
Tôi luôn sử dụng cùng một khối. Tôi muốn có khối đó ở đâu đó và cung cấp nó cho hàm min/max. Tôi hy vọng một cái gì đó như:
blo = lambda {|a,b| a[1] <=> b[1]}
arr.min blo
sẽ hoạt động, nhưng không. Bất kỳ ý tưởng về cách tôi có thể làm điều này?
Người duy nhất đọc câu hỏi cẩn thận. – Nakilon
Đây chính xác là những gì tôi đang tìm kiếm. Cám ơn đã trả lời! –
@Cristobal có lẽ bạn nên "chấp nhận" câu trả lời bạn hài lòng. Nó chỉ ra cho người dùng khác rằng câu hỏi này đã được trả lời và câu trả lời được chấp nhận. –