module Answers::Issue20260209
Original answer
Public Instance Methods
Source
# File answers/20260209.rb, line 15 def izkreny_and_andynu_move_numbers_partition_flatten(integers, number) integers.partition { it != number }.flatten end
Ruby Users Forum answers
Public Instance Methods
Source
# File answers/20260209.rb, line 71 def chadow_move_numbers_map(ary, num) new_ary = [] nums_to_move = [] ary.map do |element| element == num ? nums_to_move << element : new_ary << element end new_ary + nums_to_move end
Source
# File answers/20260209.rb, line 54 def charlie_and_fpsvogel_move_numbers_sort_by(arr, num) arr.flat_reverse_partition(num) end
Refinement answer by fpsvogel: Answers::Issue20260209::FlatReversePartition
Using same method as charlie:
def move_nums(arr, item, in_place: false) sort_method = in_place ? "sort_by!" : "sort_by" arr.public_send(sort_method) { it == item ? 1 : 0 } end
Source
# File answers/20260209.rb, line 67 def charlie_and_fpsvogel_move_numbers_sort_by!(arr, num) arr.flat_reverse_partition!(num) end
Refinement answer by fpsvogel: Answers::Issue20260209::FlatReversePartition
Using same method as charlie:
def move_nums(arr, item, in_place: false) sort_method = in_place ? "sort_by!" : "sort_by" arr.public_send(sort_method) { it == item ? 1 : 0 } end
Source
# File answers/20260209.rb, line 96 def eayurt_move_numbers_each!(array, number) return unless array.include? number write = 0 array.each do |element| if element != number array[write] = element write += 1 end end (write...array.length).each { |i| array[i] = number } array end
Source
# File answers/20260209.rb, line 90 def javier_cervantes_and_izkreny_move_numbers_delete_flatten!(numbers, num) count = numbers.count(num) numbers.delete(num) numbers.append([num] * count).flatten! end
Array#delete answer by javier.cervantes with Array#append and Array#flatten! by izkreny
Source
# File answers/20260209.rb, line 82 def javier_cervantes_move_numbers_delete(numbers, num) count = numbers.count(num) numbers.delete(num) numbers + Array.new(count, num) end
Source
# File answers/20260209.rb, line 25 def katafrakt_move_numbers_partition_reverse_flatten(arr, num) arr.partition { it == num }.reverse.flatten end