首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

最大单词长度乘积

题目: 给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母。你可以认为每个单词只包含小写字母。...如果不存在这样的两个单词,返回 0。...示例 3: 输入: ["a","aa","aaa","aaaa"] 输出: 0 解释: 不存在这样的两个单词。...抛砖引玉 传入一个字符串数组,返回数组中两个不含相同字符的字符串元素长度乘积的最大值 思路 先暴力破解一下(暴力 API 工程师 ㄟ( ▔, ▔ )ㄏ  ) 双循环枚举处两两不含相同字符的元素 保留枚举的符合要求元素长度的乘积...一个字符串用一个二进制数表示,每个字符根据字符在二进制位中不同位置放置 1 占位,那么比较两个字符串是有相同字符只有对两个二进制数取按位或一定不等于 0 ab => ..000011 ac => ..0000101

2.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    最后一个单词的长度

    给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。...示例 3: 输入:s = "luffy is still joyboy" 输出:6 解释:最后一个单词是长度为6的“joyboy”。...题目要求得到字符串中最后一个单词的长度,可以反向遍历字符串,寻找最后一个单词并计算其长度。 由于字符串中至少存在一个单词,因此字符串中一定有字母。...首先找到字符串中的最后一个字母,该字母即为最后一个单词的最后一个字母。 从最后一个字母开始继续反向遍历字符串,直到遇到空格或者到达字符串的起始位置。...遍历到的每个字母都是最后一个单词中的字母,因此遍历到的字母数量即为最后一个单词的长度。

    18030

    linux中getchar函数用法,linux getchar函数使用

    1 函数介绍 1) 函数原型 int getchar(void); 2) 函数功能 从stdin中读取一个字符。 3) 返回值 返回读取字符的ASCII值或者EOF字符或者出错值。...在输入这段字符串的过程中getchar函数没有发生从stdin读取字符的操作(因为没有任何的字符输出),当在输入字符串后按下回车后界面输出情况如下: input your strings: hello...2) getchar每次只读取一个字符,如果程序中不采用循环而只设置一个getchar()语句,则getchar只读取输入字符串的首个字符,其余字符依然留在缓存区中(若将程序的while循环去掉只输出第一个字符...重新编译并运行程序,输入字符串:hello[回车] 得第一次运行结果 当程序首次执行到while中的getchar时,getchar函数等待用户的输入,getchar函数一直等待用户输入,当用户按下回车表示用户输入完毕...getchar函数读取,因为while循环的条件已经为假)并得到以下输出界面 String输入字符串的长度为6在一次表明getchar读取了用户输入的回车。

    3.2K30

    【C++】B2120 单词的长度

    前言 在本次讨论中,我们围绕一个典型的编程问题展开:给定一行输入的单词序列,要求计算并输出每个单词的长度,单词之间以逗号隔开。...C++ 参考手册 题目描述 B2120 单词的长度 题目:输入一行单词序列,相邻单词之间由1个或多个空格间隔,请对应地计算各个单词的长度。...输入格式: 一行单词序列,最少1个单词,最多300个单词,单词之间用至少1个空格间隔。 单词序列总长度不超过1000。 输出格式: 依次输出对应单词的长度,之间以逗号间隔。...我的做法是基于字符串流的方式,通过逐个读取单词,计算每个单词的长度,最后格式化输出。...步骤二:通过 std::istringstream 将输入字符串流化,方便按空格分割单词。 步骤三:逐个读取单词并计算其长度,存储在 lengths 向量中。

    10110

    算法-最后一个单词的长度

    ,返回其最后一个单词的长度。...如果不存在最后一个单词,请返回 0 。 说明:一个单词是指由字母组成,但不包含任何空格的字符串。...2.注意split的用法,返回的是一个数组,而其中的元素是字符串 3.如果一个字符串由若干的空格,并且其没有字母表示,那么调用String的split()方法所返回的不是一个null,而是一个空数组...方法二:利用String内的charAt()方法,逻辑上是字符串最后开始找,没找到单词继续找,找到单词,开始记录单词长度,并且遇到的第一个空格停止循环。...此方法的关键就是将逻辑翻译为机器逻辑,跳出循环一定是要在之前有字符串的情况下才能执行,这逻辑就是count>0,机器语言是如此精炼,所以,在敲代码是首先考虑的是自己已经定义好的变量作为下面的逻辑判断变量

    49330

    最后一个单词的长度(C++)

    最后一个单词的长度 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。...示例 1: 输入: s = "Hello World" 输出: 5 解释: 最后一个单词是“World”,长度为5。...示例 2: 输入: s = " fly me to the moon " 输出: 4 解释: 最后一个单词是“moon”,长度为4。...示例 3: 输入: s = "luffy is still joyboy" 输出: 6 解释: 最后一个单词是长度为6的“joyboy”。...提示: 1 <= s.length <= 104 s 仅有英文字母和空格 ' ' 组成 s 中至少存在一个单词 我的代码: class Solution { public: // 这个题的难点是

    5300

    LeetCode - #58 最后一个单词的长度

    如果大家有建议和意见欢迎在文末留言,我们会尽力满足大家的需求。 难度水平:简单 1. 描述 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。...单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 2. 示例 示例 1 输入:s = "Hello World" 输出:5 解释:最后一个单词是“World”,长度为5。...示例 2 输入:s = " fly me to the moon " 输出:4 解释:最后一个单词是“moon”,长度为4。...示例 3 输入:s = "luffy is still joyboy" 输出:6 解释:最后一个单词是长度为6的“joyboy”。...约束条件: 1 <= s.length <= 10^4 s 仅有英文字母和空格 ' ' 组成 s 中至少存在一个单词 3.

    45610

    c语言getchar()的用法_c=getchar()

    ,getchar 有一个 int 型的返回值。...用户输入的字符被存放在键盘缓冲区中,直到用户按回车为止(回车字符 \n 也放在缓冲区中),当用户键入回车之后,getchar() 函数才开始从输入缓冲区中每次读取一个字符,getchar 函数的返回值是用户输入的字符的...ASCII 码,若遇到文件结尾 (End-Of-File) 则返回 -1 (EOF),并将用户输入的字符回显到屏幕,如果用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续 getchar...也就是说,后续的 getchar 调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完后,才等待用户按键。...程序中 while 循环工作时,每一次循环 getchar() 就会从输入缓冲区读取一个字符,然后 putchar 输出,直到遇到了文件结束标志 EOF,循环判断条件为假,循环才结束 为啥用缓冲区呢?

    7.5K50

    C语言getchar的用法_getchar的用法

    getchar getchar的定义 MSDN中的解释是从流中读取一个字符 int ch = getchar() //通过getchar获取字符的ASCII码值传到ch里面存储 这里注意...:getchar获取字符以后 通过ASCII码值的形式存储在ch里 为什么不用char ch?...getchar读到的是一个int类型的数据 好处是返回值的时候非常方便 接下来我们再看一个示例: int main() { int ch = 0; while ((ch...当我们输入的时候并不是键盘直接到getchar,而是中间有一个输入缓冲区,getchar一直在等待缓冲区里的内容,正是有了缓冲区的存在,才会出现有1的问题 4、我们如何清空缓冲区以免对后续操作造成影响呢...getchar读到空格就不读了 第二次getchar拿到的是空格 还剩def\n 多一个空格 程序又出错了 所以这个时候我们需要用到刚刚的代码,进行稍微的修改可以很好的清空缓冲区 int main

    1.6K30

    LeetCode28|最后一个单词的长度

    1,问题简述 给定一个仅包含大小写字母和空格 ' ' 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。 如果不存在最后一个单词,请返回 0 。...说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。...2,示例 输入: "Hello World" 输出: 5 3,题解思路 从字符串最后一个位置向前查找,这就是本题的题解了 4,题解程序 public class LengthOfLastWordTest...6,总结 总结一下这道题的写法,主要是为了完成自己心目中早已定下的内容,顺便回顾一下过去的内容,数据的查找可以从前到后查找,从后向前查找,二分查找都可以,不过时间复杂符不一样,这或许也是自己输出内容的原因之一吧

    43230

    LeetCode 进阶之路 - 最后一个单词的长度

    给定一个仅包含大小写字母和空格' '的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。 如果不存在最后一个单词,请返回 0。...说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。...trim()来去空格,但是想想好像不太好,然后借鉴了题解的高人的代码,通过循环判断尾部是否有空格,有的话长度就减1,直到尾部没有空格为止 * 代码:while (lenth >= 0 &...-; */ s = s.trim(); // 通过从后往前遍历字符串,定义一个temp来进行计数,temp每次加1,直到遇到空格后返回当前temp值就是单词的长度...(s)); } } Copyright: 采用 知识共享署名4.0 国际许可协议进行许可 Links: https://lixj.fun/archives/leetcode进阶之路-最后一个单词的长度

    37010

    LeetCode | 58.最后一个单词的长度

    这次来写一下 LeetCode 的第 58 题,最后一个单词的长度。 题目描述 题目直接从 LeetCode 上截图过来,题目如下: ?...上面的题很简单也很短,就不做过多的解释了。 问题分析 这个题只要从后往前遍历整个字符串就可以了,在遍历的过程中只要找到空格就可以很容易计算到最后一个单词的长度。...这么简单的问题,但是其中有两个小小的坑,第一个坑是,如果字符串的末尾有空格,那么怎么办?第二个坑是,如果字符串中没有空格怎么办?...第一个坑的解决方法是跳过字符串尾部出现的所有空格;第二个坑的解决方法是如果在字符串中没有空格,那么当前字符串实际上就是整个字符串的最后一个单词,那么只要返回整个字符串的长度就可以了。...点击 “提交” 按钮后,系统会使用更多的测试用例来测试我们写的函数体,如果所有的测试用例都通过了,那么就会给出 “通过” 的字样,如果没有通过,会给出失败的那一组测试用例,我们继续修改代码。

    58430
    领券