当前位置: 首页 > news >正文

建设 互动 网站 模式百度产品优化排名软件

建设 互动 网站 模式,百度产品优化排名软件,网站名称查询,国外网站建设软件有哪些方面目录 1.题目2.答案3.提交结果截图 链接: 文本左右对齐 1.题目 给定一个单词数组 words 和一个长度 maxWidth ,重新排版单词,使其成为每行恰好有 maxWidth 个字符,且左右两端对齐的文本。 你应该使用 “贪心算法” 来放置给定的单…

在这里插入图片描述

目录

    • 1.题目
    • 2.答案
    • 3.提交结果截图

链接: 文本左右对齐

1.题目

给定一个单词数组 words 和一个长度 maxWidth ,重新排版单词,使其成为每行恰好有 maxWidth 个字符,且左右两端对齐的文本。

你应该使用 “贪心算法” 来放置给定的单词;也就是说,尽可能多地往每行中放置单词。必要时可用空格 ' ' 填充,使得每行恰好有 maxWidth 个字符。

要求尽可能均匀分配单词间的空格数量。如果某一行单词间的空格不能均匀分配,则左侧放置的空格数要多于右侧的空格数。

文本的最后一行应为左对齐,且单词之间不插入额外的空格。

注意:

  • 单词是指由非空格字符组成的字符序列。
  • 每个单词的长度大于 0,小于等于 maxWidth
  • 输入单词数组 words 至少包含一个单词。

示例 1:

输入: words = ["This", "is", "an", "example", "of", "text", "justification."], maxWidth = 16
输出:
["This    is    an","example  of text","justification.  "
]

示例 2:

输入:words = ["What","must","be","acknowledgment","shall","be"], maxWidth = 16
输出:
["What   must   be","acknowledgment  ","shall be        "
]
解释: 注意最后一行的格式应为 "shall be    " 而不是 "shall     be",因为最后一行应为左对齐,而不是左右两端对齐。       第二行同样为左对齐,这是因为这行只包含一个单词。

示例 3:

输入:words = ["Science","is","what","we","understand","well","enough","to","explain","to","a","computer.","Art","is","everything","else","we","do"],maxWidth = 20
输出:
["Science  is  what we","understand      well","enough to explain to","a  computer.  Art is","everything  else  we","do                  "
]

提示:

  • 1 <= words.length <= 300
  • 1 <= words[i].length <= 20
  • words[i] 由小写英文字母和符号组成
  • 1 <= maxWidth <= 100
  • words[i].length <= maxWidth

2.答案

class Solution {public List<String> fullJustify(String[] words, int maxWidth) {if (words.length == 1) {int leftSpaceNum = maxWidth - words[0].length();char[] leftSpaces = new char[leftSpaceNum];Arrays.fill(leftSpaces, ' ');return Collections.singletonList(words[0] + new String(leftSpaces));}List<String> lines = new ArrayList<>();int i = 1;int length = words[0].length();List<String> lineWords = new ArrayList<>();lineWords.add(words[0]);while (i < words.length) {if (length + 1 + words[i].length() <= maxWidth) {// 记录每行的单词lineWords.add(words[i]);length = length + 1 + words[i++].length();} else {// 已经记满一行String line = wordsToLine(lineWords, maxWidth, false);lines.add(line);lineWords.clear();lineWords.add(words[i]);length = words[i++].length();}}String line = wordsToLine(lineWords, maxWidth, true);lines.add(line);return lines;}/*** 将单词转化为一行* @param lineWords* @return*/private String wordsToLine(List<String> lineWords, int maxWidth, boolean isLastLine) {assert lineWords.size() >= 1;int wordsLength = lineWords.stream().mapToInt(String::length).sum();if (!isLastLine && lineWords.size() > 1) {// 非最后一行// 计算每个间隔空格int eachSpaceNum = (maxWidth - wordsLength) / (lineWords.size() - 1);char[] eachSpaces = new char[eachSpaceNum];Arrays.fill(eachSpaces, ' ');String eachSpaceStr = String.valueOf(eachSpaces);// 计算第一个间隔额外空格数int leftSpaceNum = (maxWidth - wordsLength) % (lineWords.size() - 1);StringBuilder builder = new StringBuilder();for (int i = 0; i < lineWords.size(); i++) {builder.append(lineWords.get(i));if (i != lineWords.size() - 1) {builder.append(eachSpaceStr);if (leftSpaceNum > 0) {builder.append(" ");leftSpaceNum--;}}}return builder.toString();} else {// 最后一行,左对齐即可StringBuilder builder = new StringBuilder();for (int i = 0; i < lineWords.size(); i++) {builder.append(lineWords.get(i));if (i != lineWords.size() - 1) {builder.append(" ");}}int leftSpaceNum = maxWidth - wordsLength - (lineWords.size() - 1);char[] leftSpaces = new char[leftSpaceNum];Arrays.fill(leftSpaces, ' ');builder.append(new String(leftSpaces));return builder.toString();}}
}

3.提交结果截图

在这里插入图片描述

整理完毕,完结撒花~ 🌻

http://www.hkea.cn/news/521166/

相关文章:

  • 创意二维码制作网站企业网络营销推广案例
  • 论坛型网站怎么做百度高级检索入口
  • 做百度移动网站排搜素引擎优化
  • 公司创建一个网站需要多少钱想做百度推广找谁
  • 做文献ppt模板下载网站有哪些常德政府网站
  • 青岛网站建设公司排行外链工具在线
  • 网站怎么做显得简洁美观seo数据是什么意思
  • 阿里巴巴开通诚信通后网站怎么做网络优化网站
  • 东莞手机网站价格便宜个人免费建站软件
  • 电子商务网站建设的步骤一般为百度100%秒收录
  • 做企业网站怎么样免费的推广软件下载
  • 拓普网站建设美国搜索引擎
  • 网站开发者工资冯耀宗seo视频教程
  • 软件开发各阶段工作量比例搜索引擎优化的基础是什么
  • 网站怎么做才能将名声打响云搜索app
  • 南阳做网站优化哪家好一级域名生成二级域名
  • 3322动态域名官网郑州seo联系搜点网络效果好
  • 网络营销渠道的类型河北seo基础教程
  • 做微信网站多少钱seo内部优化包括哪些内容
  • 中国城乡建设网站网络优化公司排名
  • 个人网站做淘宝客教程torrentkitty磁力搜索引擎
  • 广州北京网站建设seo培训讲师招聘
  • 手机上免费自己做网站网络营销案例分享
  • 长沙大型网站建设谷歌账号
  • 大兴德艺网站建设发布悬赏任务的推广平台
  • html5制作网站模板百度产品大全首页
  • 贵阳网站建设贵阳百度推广怎么推广
  • 瓮安建设局网站google play三件套
  • 大型门户网站模板营销神器
  • 学设计的网站都有哪些seo和sem