2020-04-18 第十天
2020-04-18 本文已影响0人
三土垚6
2020-4-18 10:49签到。
继续还是三道题。
两道easy,一道medium;
第二道easy:#### 709. 转换成小写字母
实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。
很简单的一道题,遍历数组,替换即可,但新思路是位运算:
大写变小写、小写变大写 : 字符 ^= 32;
大写变小写、小写变小写 : 字符 |= 32;
小写变大写、大写变大写 : 字符 &= -33;95(1011111)
针对 小写与大写的差异在位的第六问,如果是小写,第六位为1,如果是大写,第六位为0.
medium:
11. 盛最多水的容器
给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
说明:你不能倾斜容器,且 n 的值至少为 2。
很巧妙的思路,双指针,从两边开始移动。
我刚开始的思路,感觉很笨,而且有的情况会处理不了。