博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Weekly 5
阅读量:6320 次
发布时间:2019-06-22

本文共 2055 字,大约阅读时间需要 6 分钟。

Algorithm

  • What 罗马数字转为整数

  • How 不同的字母对应不同的数字,然后因为I can be placed before V (5) and X (10) to make 4 and 9. X can be placed before L (50) and C (100) to make 40 and 90.
    C can be placed before D (500) and M (1000) to make 400 and 900. 所以从后向前判断,如果I,X,C大于指定的值这时候就不是加而是减去对应的数字了。
  • Key Codes
class Solution {    public int romanToInt(String s) {         int res = 0;        for (int i = s.length() - 1; i >= 0; i--) {            char cur = s.charAt(i);            switch (cur) {                case 'I':                    res += (res >= 5) ? -1 : 1;                    break;                case 'V':                    res += 5;                    break;                case 'X':                    res += (res >= 50) ? -10 : 10;                    break;                case 'L':                    res += 50;                    break;                case 'C':                    res += (res >= 500) ? -100 : 100;                    break;                case 'D':                    res += 500;                    break;                case 'M':                    res += 1000;                    break;            }        }        return res;    }}

Review

  • What 在 Amazon 仓库工作了一天的体验

  • How

    本文详细记录了一个人从广播里听到Amazon仓库工人的招聘广告,从面试、到培训、再到工作的流程,惊叹于Amazon帝国之高效、规模之大。第二天,立刻买了Amazon股票。
    仓库工人有日班与夜班;日班早上6点半到晚上6点半,中间有30分钟吃午饭,以及两个15分钟可以休息。日班时薪$10.53,夜班时薪多$0.35。仓库工人经常偷东西,偷最多的是避孕套。每个工人平均每天步行13 mile(20.9公里)。有一个小时的竞争机制,最高效的2个工人,奖励$10。

Tip

  • What 工具类必须添加私有构造器

  • How

    私有构造器,就是用private关键字声明的构造器。与一般公有构造器最大的区别在于,其访问权限是private,于是它只能被包含它的类自身所访问,而无法在类的外部调用,故而可以阻止对象的生成。所以,如果一个类只有一个私有构造器,而没有任何公有构造器,是无法生成任何对象的。
    那么无法生成对象的带有私有构造器的类究竟有什么作用呢?这样的类在实际应用中最常用的是作为工具类,如字符串的验证、枚举转换之类的,通常只做成静态接口被外部调用即可。这里先插入一点关于静态方法的说明。静态方法是用static关键字声明的方法,可以用类来直接调用而无需用从类中实例化出来的具体对象来调用,因此这样的方法也被称为类方法。static方法只能访问类中的static字段和其他的static方法,这是因为非static成员必须通过对象的引用来访问。
    举一个例子:
    public class A{
    private A(){} ///私有构造类,阻止实例的生成
    public static bool validataString(String str);
    }
    那么在外部使用的时候,只需要通过类名,而不是对象实例来调用validataString方法,如A.validataString(str);可以直接调用此方法。阻止生成对象可以防止不可预期的结果。

    Share

转载于:https://www.cnblogs.com/cmh1111/p/10186637.html

你可能感兴趣的文章
CST 公共生成树
查看>>
windows Server 2003 IIS启用父路径
查看>>
shell脚本的执行方式及区别
查看>>
nginx实现对chunk请求支持
查看>>
我的友情链接
查看>>
中国铁建内网漫游沦陷多个重要部门泄漏大量信息(redis+ssh-keygen免认证登录案例)...
查看>>
Mongodb 添加删除分片与非分片表维护
查看>>
CentOS6.4之文本编辑器Vi/Vim
查看>>
我的友情链接
查看>>
1022.在线视频—IT售前营销讲座(三)售前情报、策划和资源协调
查看>>
VS2010 无法调试、断点 的解决方法
查看>>
背包问题: HDU1114Piggy-Bank
查看>>
常用的服务器命令
查看>>
linux系统安装后优化
查看>>
RHCE认证培训+考试七天实录(二)
查看>>
网络安全系列之五十二 组策略中的软件限制策略
查看>>
Google 镜像站搜集
查看>>
一个关于思科路由器ping的有趣现象
查看>>
《ActionScript3.0 游戏设计基础(第二版)》随书代码和附赠章节(共4章)
查看>>
GoDaddy万用https ssl证书如何通过DNS审核
查看>>