咱们社区持续会将顾毅(Netflix增进黑客,《iOS口试之道》做家,ACE行状健言老师。)的Swift算法题题解整治为文字版以便利众人研习与赏玩。
LeetCode算法到现在咱们曾经革新了67期,咱们会维持革新时光和进度(周一、周三、周五早晨9:00发表),每期的体例未几,咱们期盼众人能够在上班路上赏玩,永远累积会有很大提拔。
不积跬步,无甚至千里;不积小流,无以成江海,Swift社区伴你前行。倘若众人有建讲和意见招待在文末留言,咱们会努力满意众人的需要。
难度水准:艰苦
1.描绘给定一个单词数组words和一个长度maxWidth,从头排版单词,使其成为每行凑巧有maxWidth个字符,且左右两头对齐的文本。
你理当应用“贪默算法”来安顿给定的单词;也即是说,尽或许多地往每行中安顿单词。须要时可用空格填充,使得每行凑巧有maxWidth个字符。
请求尽或许平匀分派单词间的空格数目。倘若某一行单词间的空格不能平匀分派,则左边安顿的空格数要多于右边的空格数。
文本的结尾一行应为左对齐,且单词之间不插入额外的空格。
留神:
单词是指由非空格字符构成的字符序列。每个单词的长度大于0,小于即是maxWidth。输入单词数组words最少包罗一个单词。2.示例示例1
输入:words=["This","is","an","example","of","text","justification."],maxWidth=16输出:["Thisisan","exampleoftext","justification."]
示例2
输入:words=["What","must","be","acknowledgment","shall","be"],maxWidth=16输出:["Whatmustbe","acknowledgment","shallbe"]说明:留神结尾一行的格式应为"shallbe"而不是"shallbe",由于结尾一行应为左对齐,而不是左右两头对齐。第二行一样为左对齐,这是由于这行只包罗一个单词。
示例3
输入:words=["Science","is","what","we","understand","well","enough","to","explain","to","a","