Day-13 Ruby简单的程序考题!

有些公司会有上机的程序考题,相信初心者会怕怕(我个人是会啦),但从简单的题目开始学习吧!


  1. 把阵列 [1, 2, 3, 4, 5] 变成 [1, 3, 5, 7, 9]
  2. 把阵列 [1, 3, 4, 1, 7, nil, 7] 由小到大排序,并且移除 nil 以及重复的数字。
  3. 印出 1 ~ 100 之间所有的单数
  4. 计算 1 ~ 100 的总和
  5. 印出 5 个小於 100 且不重复的乱数
  6. 阵列 a = [1, 2, 3, 1, 2, 1, 3, 1, 2, 3, 4, 5, 6],请计算在阵列 a 中,每个数字出现的次数。

全部看完後,第6题比较难一些!每题的解法无固定,能解出来的就是好方法!以下是我的解法可参考~


1的解法
p [1, 2, 3, 4, 5].map{ |i| i * 2–1 }

2的解法
p [1, 3, 4, 1, 7, nil, 7].compact.uniq.sort

3的解法
p (1..100).to_a.select{ |i| i.odd? }

4的解法(比较特别,居然有.sum可以用!)
p (1..100).sum

5的解法
p (1..99).to_a.sample(5)

6的解法(这题比较难一些,要花时间去理解)
a = [1, 2, 3, 1, 2, 1, 3, 1, 2, 3, 4, 5, 6]
p a.sort.map { |i| [i, a.count(i)]}.to_h


参考资料

我的学习经验谈


<<:  情绪 - 管理者最大的敌人

>>:  Day13 ATT&CK for ICS - Initial Access(3)

[Day29] 建立购物车系统 - 12

1. 在WebMvc专案新增购物车服务的功能 1.1 新增ViewComponent CartLis...

[NestJS 带你飞!] DAY06 - Provider (上)

前一篇有提到 Provider 与 Module 之间有很核心的机制,该机制使用了 依赖注入 的概念...

Dungeon Mizarka 026

调整移动UI 今天试着调整UI到新的架构里,问题比我想像的还要多,一方面是整个架构和之前完全不一样,...

Day4 带着烤肉香的JavaScript

JavaScript约诞生於1995年,用於操作网页的DOM、BOM,负责处理所有网页与使用者的互动...