Square into Squares. 大平方数转小平方数之和

问题描述:像是把一个大的正方形分割成几个小的正方形块一样,把一个数分成由几个比他小的数字,要求其平方和相等。如把 50 分成 “1,3,5,8,49”。
额外要求:
1、要求数字序列严格递增:比如 “1,1,4,9,49” 就不符合要求。
2、要求返回具有最大可能值的结果:比如11可以分为[1,2,4,10]和[2,6,9],则返回[1,2,4,10]。

继续阅读“Square into Squares. 大平方数转小平方数之和”

罗马数字和阿拉伯数字之间的转换

问题描述:把我们常见的阿拉伯数字转化为罗马数字的形式。
拓展:两种形式的相互转换。
思路:将阿拉伯数字拆分为能够被罗马数字整除的形式(比如100、500等),再整合到一起,然后替换字符为我们需要的形式(比如IIII=>IV,VIV=>IX等等)。再使用键值对形式的数组,在实现阿拉伯数字转罗马数字之后,交换键值,就能实现反向转换了。

继续阅读“罗马数字和阿拉伯数字之间的转换”

字符串转驼峰式

这道题描述起来也是十分地简单,就是把原先用 ‘-‘,’_’隔开的字符串转为驼峰法,也就是单词紧贴在一起,且单词的首字母大写(除了第一个单词之外)。我的想法是,将字符串按照 ‘-‘,’_’ 分割成多个数组,再将一个个数组,也就是单词拼接起来,就是我们需要的了。

继续阅读“字符串转驼峰式”

简述HTTP请求过程

HTTP(HyperText Transfer Protocol)超文本传输协议,是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP 是一个简单的请求-响应协议,是客户端和服务端之间请求和应答的标准,它通常运行在 TCP(传输控制协议)之上,由统一资源标识符(Uniform Resource Identifiers,URI 包含 URL 和 URN )来标识。

HTTP 通过使用浏览器、网络爬虫或者其它的工具,客户端发起一个HTTP请求到服务器上指定端口。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。HTTP是万维网的数据通信的基础。

继续阅读“简述HTTP请求过程”