单词

单词翻转

非 Y 不嫁゛ 提交于 2020-03-06 08:33:42
问题描述:输入一个英文句子,翻转句子中单词的顺序。要求单词内字符顺序不变,句子中单词由空格隔开。为简单起见,标点符号和普通字母一样处理。例如,若输入"I am a student.",则输出"student. a am I" 参考思路:首先将整个字符串进行翻转,然后根据空格来实现每个单词的翻转,关键在于判断结束为止以及下一个单词的开始位置。 参考代码: #include <bits/stdc++.h> using namespace std; void swap_str(char* a, char* b) { char t = *a; *a = *b; *b = t; } void str_reverse(char *start, char *over) { while (start < over) { swap_str(start++, over--); } } void reverseString(char *s) { char *start = s; char *over = start; for ( ; *over!= '\0'; over++ ) { }; over--; str_reverse( start, over ); start = s; over = start; char* end_word = NULL; while ( *(over-1) != '\0'

NLP从入门到放弃_IBM Model1

ぃ、小莉子 提交于 2020-03-06 05:35:42
IBM Model1 IBM Model 是统计机器翻译中的经典翻译模型 IBM Model1仅考虑了词和词之间的互译概率 记录学习 lecture-ibm-model1 的过程 学习 外来句子, foreign sentence f = ( f 1 , . . . f l f ) f=(f_1,...f_{l_f}) f = ( f 1 ​ , . . . f l f ​ ​ ) ,长度为 l f l_f l f ​ 英文句子, english sentence e = ( e 1 , . . . , e l e ) e =(e_1,...,e_{l_e}) e = ( e 1 ​ , . . . , e l e ​ ​ ) ,长度为 l e l_e l e ​ a, alignment 外来句子中的词和英文句子中的词的对应关系,假设英文句子中的 e j e_j e j ​ 对应外来句子中的 f i f_i f i ​ (相同意思),则对应关系为 a : j → i a:j\rightarrow i a : j → i 目标函数, P ( a ∣ e , f ) P(a|e,f) P ( a ∣ e , f ) ,以给定的外来和英语为条件,找出其alignment 参数估计,EM算法 假设是需要将外来句子翻译成英文句子 目标函数 pdf中先给出了一个公式 p ( e , a ∣

《霸王背单词》 Alpha Release

大城市里の小女人 提交于 2020-03-05 05:37:08
霸王背单词 Alpha Release 下载地址 32位: http://files.cnblogs.com/bawangyishan/BawangMemo_alpha-x86.zip 64位: http://files.cnblogs.com/bawangyishan/BawangMemo_alpha-x64.zip 欢迎试用! 简介    《霸王背单词》是一款英语单词记忆和管理辅助软件,旨在帮助广大考生在短期内攻克GRE、托福等英语考试的词汇大关。本次发布的为Alpha版,具有以下基本功能: 内置GRE词汇及其常考形态、Webster英语解释 课程管理功能 单词记忆模式 单词测验模式 简易词典功能 分类标签的添加、浏览功能 标签的扩展——生词本功能 待开发功能: 单词小游戏 成就统计 词汇的List管理功能 单词发音功能 优化记忆算法 安装说明 点击setup.exe安装 已知支持系统: Windows XP Service Pack 3 Windows Vista Windows 7 需要安装以下依赖: (1) .NET Framework 4.0 Client Profile 下载地址:http://www.microsoft.com/downloads/en/confirmation.aspx?FamilyID=e5ad0459-cbcc-4b4f-97b6

单词的前缀 字典树

谁说我不能喝 提交于 2020-03-05 00:16:43
单词的前缀 Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 167 Accepted Submission(s) : 46 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description ZZY 针对某个单词表给单词定义了特别的前缀,该前缀使得在该表中可以唯一标识某个单词,并且前缀的长度是最短。若有单词是另一个单词的前缀,那么该单词的前缀就是其本身。 Input 输入包含多组数据,对于每组数据,第一行是整数 N(1~1000) ,表示单词表中单词的个数,接下来是 N 行,分别表示一个单词,每个单词长度不超过 20 位,并且都是小写字母组成。 Output 对每组输入,输出 2 行,第一行输出 “***Case 组号 ” ,接下按之前的单词表顺序,输出 N 行,每行由单词表中的单词和前缀组成,中间用空格隔开 . Sample Input 1 a 10 lap njzatz jhjn ousua j lhdahl gtmz xxisug tv aho Sample Output ***Case 1 a a ***Case 2 lap la

NOIP学习之简单排序:115.单词排序

血红的双手。 提交于 2020-03-04 05:36:35
测试链接 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一行单词序列,相邻单词之间由1个或多个空格间隔,请按照字典序输出这些单词,要求重复的单词只输出一次。(区分大小写) 输入 一行单词序列,最少1个单词,最多100个单词,每个单词长度不超过50,单词之间用至少1个空格间隔。数据不含除字母、空格外的其他字符。 输出 按字典序输出这些单词,重复的单词只输出一次。 样例输入 She wants to go to Peking University to study Chinese 样例输出 Chinese Peking She University go study to wants # include <iostream> # include <algorithm> using namespace std ; int main ( ) { int n = 0 , i , j ; string a [ 101 ] ; bool same = false ; while ( cin >> a [ n ] ) { same = false ; for ( i = 0 ; i < n ; i ++ ) { if ( a [ i ] . compare ( a [ n ] ) == 0 ) { same = true ; break ; } } if ( ! same )

洛谷P1026 统计单词个数【区间dp】

醉酒当歌 提交于 2020-03-03 08:42:29
题目 : https://www.luogu.org/problemnew/show/P1026 题意: 给定一个字符串,要求把他分成k段。给定s个单词,问划分成k段之后每段中包含的单词和最大是多少。 一个位置作为单词的开头只能计算一次。 思路: 如果仅仅是统计某一个区间内的最大单词数,这比较简单。每次从后往前推一个字符,如果这个字符是一个单词的开头,那么$cnt[i][j] = cnt[i+1][j]+1$ 但是现在要分成$j$段,这是状态之一,另一个状态应该是已经考虑前$i$个字符。 也就是用$dp[i][j]$表示前$i$个字符划分成$j$段的最大单词数。 很显然$dp[i][j] = dp[d][j-1] + cnt[d +1][i]$,也就是说在$0~i$之间找到一个位置$d$,从这里断开,前面的组成$j-1$段,后面的作为一个新的段。 需要考虑的是,一个只有$i$个字符的字符串,最多只能划分成$i$段。 并且要注意当$j =1$时需要特殊处理。 1 #include<cstdio> 2 #include<cstdlib> 3 #include<map> 4 #include<set> 5 #include<cstring> 6 #include<algorithm> 7 #include<vector> 8 #include<cmath> 9 #include

【力扣日记】520. @ 傻泠

这一生的挚爱 提交于 2020-03-03 02:59:00
题目描述 给定一个单词,你需要判断单词的大写使用是否正确。 我们定义,在以下情况时,单词的大写用法是正确的: 全部字母都是大写,比如"USA"。 单词中所有字母都不是大写,比如"leetcode"。 如果单词不只含有一个字母,只有首字母大写, 比如 “Google”。 否则,我们定义这个单词没有正确使用大写字母。 算法 1、自定义 class Solution : def detectCapitalUse ( self , word : str ) - > bool : if 97 <= ord ( word [ 0 ] ) <= 122 : #小写打头 for i in word : if ord ( i ) < 97 or ord ( i ) > 122 : return False else : #大写打头 if len ( word ) == 1 : return True if 97 <= ord ( word [ 1 ] ) <= 122 : #小写 for i in word [ 1 : ] : if ord ( i ) < 97 or ord ( i ) > 122 : return False else : for i in word : if ord ( i ) < 65 or ord ( i ) > 90 : return False return True

44.翻转单词顺序列(java)

风流意气都作罢 提交于 2020-03-02 22:03:59
题目描述 牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么? 解题思路 单词不翻转,只翻转顺序(注意:空格有多个)。把单词通过split分割,然后倒序输出,加入空格即可。 import java.util.*; public class Solution { public String ReverseSentence(String str) { if(str.trim().equals("")){ return str; } String[] s1 = str.split(" "); StringBuffer sb1 = new StringBuffer(); for(int i = s1.length;i>0;i--) { sb1.append(s1[i-1]); if(i>1) sb1.append(" "); } return sb1.toString(); } } 来源: CSDN 作者: GP_yu 链接: https://blog.csdn.net

day02-----------java 语言基础(基础语法)(传智视频)

我与影子孤独终老i 提交于 2020-03-01 10:55:55
关键字:被java语言赋予特定含义的单词。 特点: 组成关键字单词的字母全部小写。 标识符:就是给类,接口,方法,变量等起名字的字符序列 常见的命名规则 :见名知意 举例:我要定义一个学生类 class Student {} class S{} 包:其实就是文件夹,用于把相同的类名进行区分 全部小写 单级:liuyi 多级:cn.itcast cn itcast 类或者接口: 一个单词:单词的首字母必须大写 举例:Student,Dog 多个单词:每个单词的首字母必须大写 举例:HelloWorld,StudentName 方法或者变量: 一个单词:单词的首字母小写 举例:main,age 多个单词:从第二个单词开始,每个单词的首字母大写 举例:studentAge,showAllNames() 常量: 一个单词:全部大写 举例:PI 多个单词:每个字母都大写,用_隔开 举例:STUDENT_MAX_AGE 数据类型 (1)Java是一种 强 类型语言,针对每种数据都提供了对应的数据类型。 (2)分类: A:基本数据类型:4类8种 B:引用数据类型:类,接口,数组。 (3)基本数据类型 A:整数 占用字节数 byte 1 short 2 int 4 long 8 B:浮点数 float 4 double 8 C:字符 char 2 D:布尔 boolean 1 注意: