摘要:
问题: 给出一个数组,将其分成m段,求出分段方法中,要求最小化这些连续子数组的最大和。 思路: 为了最小化这些连续子数组的最大和,必然每一段的和都是接近的。我们这里引入一种二分查找的思想。 首先,在不考虑分多少段的情况下,子数组的和最小值,肯定是子数组只包含数组中最小的值,我们假设这个数为min_s 阅读全文
摘要:
问题: 输入一个矩阵,将被X字符包围的O字符全部替换为X,但是如果某个O字符处于矩阵的边界,则该O字符及其连接的所有O字符都不变。 输出替换后的矩阵。 思路: 先遍历矩阵每一个字符,当发现O字符,则利用深搜方式找出与之相连的所有O字符。 每找出一个O字符,则先将其改为X字符,并将相连接的四个方向的O 阅读全文
摘要:
问题: 按这个规则生成一系列符号串,输出第N行的第K个符号。 规则为:将前一行的0转换为01,将前一行的1转换为10。第一行为0 所以前4行及例子如下图: 思路: 可以观察前4行,得出一个规律,每一行的前半段是上一行的字符串,后半段是上一行字符串的取反后的字符串。 以第4行为例子,前四个字符是跟第三 阅读全文
摘要:
问题: 给出一个数组,求出其所有连续子数组中,和最大是多少,注意,这些子数组中,可以选择最多删除一个数。 思路: 这个题目,其实是剑指offer中面试题42:连续子数组的最大和的一个变种。不同之处在于,你找到的子数组,还可以选择删除一个。 而剑指offer里的办法,是通过从头遍历数组,计算以当前元素 阅读全文
摘要:
总所周知,Keystone服务同时占用了35357和5000这2个端口,这是因为v2版本的时候使用了2个端口,而v3版本为了向前兼容,所以也占用了这2个端口。 在v3版本的时候,这2个端口提供的服务基本相同。但相对来说35357会比较全一些。 还有一点不同的就是admin角色的服务只能通过35357 阅读全文
摘要:
有时候在Openstack中开启一个linux实例,因为镜像配置的不恰当,镜像启动起来虽然网是能够通外网的,但是却无法解析域名。 这时候,一般来说都是修改/etc/resolvconf/resolv.conf.d/base文件,添加 然后运行重启服务 但这次发现重启后,只是在原来的/etc/reso 阅读全文
摘要:
在Ubuntu官方提供的Cloud images镜像下载后,可以直接上次到Openstack使用。 但是这些镜像,如果你拿来直接生成实例,就一定要在创建实例的时候分配密钥对,才能用ssh直接进入实例,而且也不知道实例的密码,无法进行sudo操作。 而要在开启实例后,设置好ubuntu的密码,有如下几 阅读全文
摘要:
主要问题: 输入课程数量,以及课程的前序条件(以[1, 0]形式,代表上课程1之前需要先上课程0),输出按什么顺序才能上完所有课,不能则输出空数组。 思路: 考虑到题目输入课程的前序条件的形式,可以看成每一门课是图论里的节点,而谦虚条件则是点到点之间的边。所以这里我们用拓扑排序,就能输出一个合法的序 阅读全文