E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
studio2013
基于visual
Studio2013
解决面试题之0807strstr函数
题目解决代码及点评/* 写strstr函数 简单的遍历去查找吧 */ #include #include constchar*my_strstr(constchar*str,constchar*sub_str) { //遍历 for(inti=0;str[i]!='\0';i++) { inttem=i;//tem保留主串中的起始判断下标位置 intj=0; //与substr去匹
yincheng01
·
2013-12-20 01:00
基于visual
Studio2013
解决面试题之0804复杂链表
题目解决代码及点评/* 复杂链表的拷贝,现在有一个复杂链表,完成一个clone函数拷贝一个链表 复杂链表是指 structNode { structNode*_next; structNode*_sibling;//sibling指向链表中任意一个节点,或者为NULL int_data; }; 这道题困难之处在于复制sibling节点,因为按照普通思维,复制好普通链表之后 恢复sibli
yincheng01
·
2013-12-20 01:00
基于visual
Studio2013
解决面试题之0802数字最多元素
题目解决代码及点评/* 查找数组中超过一半的那个元素 方法1:每次删除数组中一对不相同的value,最后剩下都是想通的数字时,就是超过一半的那个元素了 方法2:排序后,取中间元素即可 */ #include #include #include usingnamespacestd; intfindSingle1(inta[],intlen)//一遍扫描法 { inttmp=a[0];
yincheng01
·
2013-12-20 00:00
基于visual
Studio2013
解决面试题之0801对称字符串
题目解决代码及点评/* 最大对称字符串:在一个字符串里寻找最大长度的对称字符串 对称字符串是指如“abcba”或者"abccba"此类的字符串 解决办法: 直接遍历字符串即可 */ #include usingnamespacestd; //获得pos位置上的对称字符串长度 intsymstr(char*str,intn,intpos) { intcalcMax1=0; intcal
yincheng01
·
2013-12-20 00:00
基于visual
Studio2013
解决面试题之0710求方优化
题目解决代码及点评/* 假设我们求2^32,指数是32,那么我们需要进行32次循环的乘法。但是我们在求出2^16 以后,只需要在它的基础上再平方一次就可以求出结果。同理可以继续分解2^16。也就是 a^n=a^(n/2)*a^(n/2),(n为偶数);或者a^n=a^((n-1)/2)*a^((n-1)/2)*a,(n为奇数)。这样就将 问题的规模大大缩小,从原来的时间复杂度O(n)降到现在
yincheng01
·
2013-12-19 20:00
基于visual
Studio2013
解决面试题之0709求方
题目解决代码及点评/* 实现函数doublePower(doublebase,intexponent),求base的exponent次方。 不得使用库函数,同时不需要考虑大数问题。 */ #include usingnamespacestd; //计算power doubleMyPower(doublebase,intexponent) { if((base-0.0>-0.000001)
yincheng01
·
2013-12-19 20:00
基于visual
Studio2013
解决面试题之0708字符串全排列
题目解决代码及点评/* 给出一个函数来输出一个字符串的所有排列 解决方法:采用递归 */ #include usingnamespacestd; /*找pszBuf,从pBegin开始的全排列*/ voidPerm(char*pszBuf,char*pBegin) { if(pszBuf==NULL||pBegin==NULL) { return; } //如果pBegin是最后一个
yincheng01
·
2013-12-19 20:00
基于visual
Studio2013
解决面试题之0707最小元素
题目解决代码及点评/* 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个 排好序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5} 的一个旋转,该数组的最小值为1。 */ #include usingnamespacestd; intFindMin(int*pnArr,intnLen) { if(pnArr==NUL
yincheng01
·
2013-12-18 01:00
基于visual
Studio2013
解决面试题之0704判断牌是否顺子
题目解决代码及点评/* 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2-10 为数字本身,A为1,J为11,Q为12,K为13,而大小王可以看成任意数字。 解法,通过选择排序,将5张牌排序,再判断是否相邻为1,对王进行一些额外判断即可 */ #include usingnamespacestd; voidSelectSort(int*pnArr,intnLen)
yincheng01
·
2013-12-18 01:00
基于visual
Studio2013
解决面试题之0703翻转栈
题目解决代码及点评/* 用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。颠倒之后的栈为{5,4,3,2,1}, 5处在栈顶。 */ #include usingnamespacestd; template classStack { public: Stack(intLen=10);//默认栈的大小为10 ~Stack(){delete[]pArr;} voidPush(Tv
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0702输出数字
题目解决代码及点评/* 输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3 一直到最大的3位数即999。 */ #include usingnamespacestd; //在不考虑大数的情况下,只要简单找出最大数,然后循环打印即可 voidPrint1(intn) { if(nINT_MAX||nMax>n; Print2(n); system("pause")
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0701寻找丑数
题目解决代码及点评/* 我们把只包含因子2、3和5的数称作丑数(UglyNumber)。例如6、8都是丑数, 但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序 的第1500个丑数。 */ #include usingnamespacestd; boolIsUgly(intnNum) { while(nNum%2==0) { nNum/=2; } whil
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0610删除重复字符串
题目解决代码及点评/* 有两个字符串A和B,将同时在A和B中的字符,从A中剔除 比如A="iamstudent",B="aeu" 那么结果是A="imstdnt"; 这个思想类似基数偶数分开的那个面试题,两头遍历A串,如果字符在B中,则交换到末尾去 */ #include usingnamespacestd; intchuxian(chara,char*p) { for(inti=0
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0609寻找链表公共节点
题目解决代码及点评/* 查找交叉链表中,第一个共同节点。 这个链表是Y形状的链表,从第一个共同链表后,就是相同节点了 解决思想:让长的链表先往前走几步,到步调一致时,一起往前遍历,找到相同节点 */ #include usingnamespacestd; typedefstructnode { intdata; structnode*next; }Node; Node*crea
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0608找出两个只出现一次的数
题目解决代码及点评 /* 已知数组中有两个数只出现一次,其他成对出现,请找出这两个数 解决办法: 1)简化问题,如果数组中只有一个数出现一次,那么只要对这个数组做异或即可 2)所以这个问题的根本是,怎么把这两个数分开在两组里,这两组数据都有问题1)的特点 3)再分别找出这两个数 分组办法: 1)将所有数据做异或,那么这个
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0604O(1)时间复杂度删除链表节点
题目解决代码及点评/* 在O(1)时间内删除链表节点 链表结构体 classListNode { public: ListNode*_next; int_data; }; classList { public: ListNode*_head; voidrm(ListNode*node) { //TODO:removethenodeinO(1) } }; 一般情况下,链表删除,需要遍历
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0603调整数组
题目解决代码及点评/* 调整数组,让基数在前,偶数在后 遍历的方法显然是低级的,更好的方法是,用两个指针,一个从头, 一个从尾部,逼近中间,如果 1)头部是奇数,尾部是偶数,则两个指针都移动 2)头部是偶数,尾部是奇数,则交换两个数值之后,再移动两个指针 3)头部是奇数,尾部也是奇数,那么移动头部指针 4)头部是偶数,尾部也是偶数,那么移动尾部指针 当两个指针相遇时,那么工作完成了 */
yincheng01
·
2013-12-18 00:00
基于visual
Studio2013
解决面试题之0602全排列
题目解决代码及点评/* 字符串全排列打印 比如abc的全排列为 abc acb bca bac cab cba 从上例中可以看出求解思路,通过递归可以完成, 取出a,再递归获取bc的全排列 取出b,递归获取ac的全排列 取出c,递归获取ab的全排列 */ #include usingnamespacestd; constintN=5; //全排列也是采用递归即可,比如字符串"abc
yincheng01
·
2013-12-16 23:00
基于visual
Studio2013
解决面试题之0601二叉树深度
题目解决代码及点评/* 求二叉树深度 */ #include #include usingnamespacestd; template classBiTNode { public: TnValue; BiTNode*pLChild; BiTNode*pRChild; }; template classBiTree { public: BiTree(); ~BiTree(); BiTNo
yincheng01
·
2013-12-16 22:00
基于visual
Studio2013
解决面试题之0510连续数之和
题目解决代码及点评/* 输入一个正数n,输出所有和为n连续正数序列。 例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8。 */ #include usingnamespacestd; voidPrint(inti,intj) { while(inNum nSum-=nBegin++; } } } intmain() { FindS
yincheng01
·
2013-12-16 22:00
基于visual
Studio2013
解决面试题之0507字符串转整数
题目解决代码及点评/* 输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345", 则输出整数345。 */ #include usingnamespacestd; boolgIsVaild=true; //转化函数 intstrToi(constchar*pszBuf) { if(pszBuf==NULL) { gIsVaild=false; return0;
yincheng01
·
2013-12-16 22:00
基于visual
Studio2013
解决面试题之0506取和为m的可能组合
题目解决代码及点评/* 输入两个整数n和m,从数列1,2,3.......n中随意取几个数, 使其和等于m,要求将其中所有的可能组合列出来. */ #include #include #include usingnamespacestd; //通过递归查找和 voidfindSum(intm,intn,listarr1) { //如果n太小,小到连所有加起来都比m小,那就结束了 if(n
yincheng01
·
2013-12-16 22:00
基于visual
Studio2013
解决面试题之0503取最大数字字符串
题目解决代码及点评/* 在字符串中找出连续最长的数字串,并把这个串的长度返回,并把这个最长数字串付 给其中一个函数参数outputstr所指内存。例如:"abcd12345ed125ss123456789"的首地址传给 intputstr后,函数将返回9,outputstr所指的值为123456789 */ #include usingnamespacestd; intFindMaxLe
yincheng01
·
2013-12-16 21:00
基于visual
Studio2013
解决面试题之0504单链表逆序
题目解决代码及点评/* 单链表就地逆序 这个在一般公司面试中很常见 */ #include usingnamespacestd; //链表节点定义 classLinkNode { public: LinkNode*_next; int_val; LinkNode(intval,LinkNode*next=NULL):_val(val),_next(next){} }; //链表类
yincheng01
·
2013-12-16 21:00
基于visual
Studio2013
解决面试题之0502字符串左移
题目解决代码及点评/* 定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。 如把字符串abcdef左旋转2位得到字符串cdefab。 请实现字符串左旋转的函数,要求对长度为n的字符串操作的时间复杂度为O(n), 空间复杂度为O(1)。 解决思想: 将字符串定义为A、B两部分,A是要左移部分,B是不动部分,那么算法变成 A逆序,B逆序,然后整体逆序就行了 */ #incl
yincheng01
·
2013-12-16 21:00
基于visual
Studio2013
解决面试题之0501上台阶
题目解决代码及点评/* 一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。求总共有 多少总跳法 分析方法: 当n=1时,有1种跳法 当n=2时,有2种跳法,(1+1,或者直接2) 当n>2时,由于第一步可以选择跳1级或者跳2级,所以F(n)=F(n-1)+F(n-2) 最后将这个题目转换成求n的斐波那契数列值 */ #include usingnamespacestd; //斐波那
yincheng01
·
2013-12-16 21:00
基于visual
Studio2013
解决面试题之0410计算二进制中1的个数
题目解决代码及点评/* 求一个数中,二进制表示方式中1的个数 范例算法采用分治思想,通过位操作计算二进制中1的个数 */ #include usingnamespacestd; intcounter(intn) { n=(n&0x55555555)+((n>>1)&0x55555555); n=(n&0x33333333)+((n>>2)&0x33333333);//计算每两位有多少个
yincheng01
·
2013-12-16 21:00
基于visual
Studio2013
解决面试题之0409判断一个栈是否另外一个栈的弹出序列
题目解决代码及点评/* 判断某个序列是否出栈序列,比如43521,是1,2,3,4,5的出栈序列 解决方法: 使用栈数据结构,第一个栈存原始数据1,2,3,4,5,第二个栈是活动栈 第三个栈保存4,3,5,2,1 做法是通过将原始数据栈往活动栈丢,没丢一次判断活动栈顶和第三个栈顶数据是否相同,如果相同则都弹出 当第三个栈空了时,说明成功 当第一个栈空了,依旧没能匹配到和第三个栈顶相同的
yincheng01
·
2013-12-16 20:00
基于visual
Studio2013
解决面试题之0407数组差
题目解决代码及点评/* 通过交换a,b中的元素,是的a序列的和与b序列的和之间的差最小 比如a=[1,2,3,4,5] b=[6,7,8,9,10]那么把b中一些大的交换到a去,使得他们之间的差值更小 思路: 假设a的和为sa,b的和为sb,那么他们的差值 diff=abs(sa-sb); 为了缩小差距,那么需要交换两个值,如果这两个值最接近diff/2,那么 交换之后diff就为0了,
yincheng01
·
2013-12-15 01:00
基于visual
Studio2013
解决面试题之0405和最大的子矩阵
题目解决代码及点评/* 在一个矩阵中,找到和最大的【2*2】的子矩阵 */ #include usingnamespacestd; constintN=4; intmain() { intindex[2]={0}; intmax=0; //待分析数据 inta[N][N]={{4,5,1,6},{1,7,10,1},{1,5,2,2},{12,0,3,15}}; //遍历所有二维数据
yincheng01
·
2013-12-15 00:00
基于visual
Studio2013
解决面试题之0403串联字符串
题目解决代码及点评/* 有n个长为m+1的字符串,如果某个字符串的最后m个字符与某个字符串的前m个字符匹配,则两个字符串可以联接, 问这n个字符串最多可以连成一个多长的字符串,如果出现循环,则返回错误。 */ #include usingnamespacestd; intmaxlengh=0; voidgo(char*a[20],char**a2,intn) { //遍历13个字符
yincheng01
·
2013-12-15 00:00
基于visual
Studio2013
解决面试题之0402合并升序链表并去重
题目解决代码及点评/* 两个升序链表合并,并要求去掉重复元素 */ #include usingnamespacestd; classLinkNode { public: int_val; LinkNode*_next; LinkNode(intval,LinkNode*next=NULL):_val(val),_next(next){} }; classLink { public: L
yincheng01
·
2013-12-14 23:00
基于visual
Studio2013
解决面试题之0401非递归遍历二叉树
题目解决代码及点评/* 非递归实现中序遍历二叉树 中序遍历概念:先访问左子树,然后再访问根节点,然后再访问右子树 用递归的方法非常简单,理解思想几行代码,但是不用递归该如何实现? 不用递归,则需要用栈来保存现场,要遍历左子树之前,将根节点压栈 再访问左子树,当该根节点要被弹出来时,说明左子树已经遍历完毕 以下代码只注释inOrder,其他类推即可 */ #include #incl
yincheng01
·
2013-12-13 15:00
基于visual
Studio2013
解决面试题之0309左移递减序列搜索
题目解决代码及点评/* 左移递减数列查找某一个数 左移递减数列,指一个数列是由一个递减数列左移而来 比如[6,5,4,3,2,1]左移两位得到[4,3,2,1,6,5] 在左移数列中查找某一个数 想法:依旧可以用二分查找法,因为这样的数列二分之后,至少有一半是有序的 */ #include usingnamespacestd; //这个函数是一个有序序列的二分查找,不再多加注释了,大家
yincheng01
·
2013-12-13 15:00
基于visual
Studio2013
解决面试题之0308Fibonacci数列
题目解决代码及点评/* 题目:定义Fibonacci数列如下: /0n=0 f(n)=1n=1 /f(n-1)+f(n-2)n=2 输入n,用最快的方法求该数列的第n项。 */ #include usingnamespacestd; //递归实现 intFibonacci(intn) { if(n>n; cout<
yincheng01
·
2013-12-13 15:00
基于visual
Studio2013
解决面试题之0307最后谁剩下
题目解决代码及点评/* n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始,每次从这个圆圈中删除第m 个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。当一个数字删除后, 从被删除数字的下一个继续删除第m个数字。求出在这个圆圈中剩下的最后一个数字。 */ #include usingnamespacestd; //链表节点,我们使用链表来进行操作,目的是为了简化,当有人
yincheng01
·
2013-12-13 14:00
基于visual
Studio2013
解决面试题之0306打印第一次只出现一次的字符
题目解决代码及点评/* 在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b */ #include #include usingnamespacestd; /*在字符串中查找第一个只出现一次的字符串*/ voidFindChar(conststring&strBuf) { intnArr[256];//使用表格,来记录出现次数 inti; //将计数数组清
yincheng01
·
2013-12-13 14:00
基于visual
Studio2013
解决面试题之0305广度优先搜索二叉树
题目解决代码及点评/* 输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序 打印 层次遍历二叉树 解决方法,使用广度优先搜索 */ #include #include usingnamespacestd; //树节点,包括左二子、右儿子指针和保存的值 classTreeNode { public: TreeNode*_left; TreeNode*_right
yincheng01
·
2013-12-13 14:00
基于visual
Studio2013
解决面试题之0304镜像二叉树
题目解决代码及点评/* 输入一颗二元查找树,将该树转换为它的镜像 镜像的意思是原来二叉搜索树,是左子树root>右子树 */ #include usingnamespacestd; //树节点,包括左二子、右儿子指针和保存的值 classTreeNode { public: TreeNode*_left; TreeNode*_right; int_val; TreeNode(intv
yincheng01
·
2013-12-13 14:00
基于visual
Studio2013
解决面试题之0303数组求和
题目解决代码及点评/* 输入一个已经按升序排序过的数组和一个数字, 在数组中查找两个数,使得它们的和正好是输入的那个数字。 要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可。 */ #include usingnamespacestd; //查找函数,pnArr是有序数组 //nLen是数组长度 //nSum是期望的和 //a,b是查找结果下标,如果返回tru
yincheng01
·
2013-12-13 14:00
基于visual
Studio2013
解决面试题之0302链表中找倒数k项节点
题目解决代码及点评/* 题目:已知单向链表,有n个元素,求倒数第k个元素,要求时间复杂度O(n) 思路:需要两个指针p1,p2,p1先往前走,p2在p1走了k步之后跟随,这样当p1到了尾部时,p2就到了倒数第k的位置 */ #include #include usingnamespacestd; //链表节点类 //包含_value和_next两个成员 classLinkNode {
yincheng01
·
2013-12-13 14:00
基于visual
Studio2013
解决面试题之0301累加
题目解决代码及点评/* 求1+2+3+...+n 要求不能使用乘除法、for、while、if、else、switch、case等关键字 以及条件判断语句(A?B:C) 解决思路: 通过全局变量(或者静态类变量)来记录累加的和,以及累加到的数字 通过构造函数来实现累加 */ #include usingnamespacestd; #defineN100 /*定义计算类Base*/ cl
yincheng01
·
2013-12-13 14:00
基于visual
Studio2013
解决面试题之0210树的最远距离
题目解决代码及点评/* 二叉树的最大距离:将二叉树看成图,节点之间的距离为中间的线,求最大节点距离 解决: 如果左子树和右子树都不为空:最大距离=左子树深度+右子树深度+2 */ #include #include usingnamespacestd; //树节点定义 template classBiTNode { public: TnValue;//值 BiTNode*pLChil
yincheng01
·
2013-12-13 02:00
基于visual
Studio2013
解决面试题之0209最大堆排序
题目解决代码及点评/* 最大堆是一个数组数据结构,任意一个下标i,它的值大于i*2和i*2+1的值(i从1开始) 当这样的堆形成时,最大值在数组最开始的位置。 当这样的堆形成后,将第一个元素交换到最后,并在剩余的数据中再调整堆,形成新的堆 如此反复完成排序 */ #include usingnamespacestd; voidswap(int*a,int*b) { inttemp;
yincheng01
·
2013-12-13 02:00
基于visual
Studio2013
解决面试题之0208二叉搜索树后序遍历序列
题目解决代码及点评/* 给出一个数组,判断该数组是否为二叉搜索树的后序遍历 后序遍历是先遍历左子树,再遍历右子树,最后访问根节点 所以,后序遍历的特点是,最后一个元素是根节点 在数组剩下的部分里,某连续的部分P1小于根节点,而某连续的部分P2全部大于根节点 对P1和P2来说,分别是两个子树的后序遍历,因此使用递归即可 */ #include usingnamespacestd; /*判
yincheng01
·
2013-12-13 01:00
基于visual
Studio2013
解决面试题之0202上下排
题目解决代码及点评/* 上下排是指:根据上排的数字,下排对应的数字是上排数字在下排出现的次数,比如 0123456789 6210001000 0在下排出现6次 1在下排出现2次 2在下排出现1次 ... 现在已知上排,求下排 思路: 不停的循环尝试,一直尝试到下排没有数据修改为止 */ #include #include #include"array" usingnamespac
yincheng01
·
2013-12-13 01:00
基于visual
Studio2013
解决面试题之0207单词翻转
题目解决代码及点评/* 单词翻转,比如youare变成areyou,并非完全字符串翻转 是根据空格为单位的单词进行翻转,单词却依然完整。 方法是从句子尾部开始遍历,一旦发现空格,则从空格的下一个字母开始打印一个单词 一旦到了句子的第一个字母,也打印单词 */ #include #include #include #include #include usingnamespacestd;
yincheng01
·
2013-12-13 00:00
基于visual
Studio2013
解决面试题之0206hash表实现
题目解决代码及点评/* hash表,是用hash算法将任意长度的二进制值,映射为较短的固定范围的二进制值 在这个例子里,我们简单的使用%10作为我们的hash算法。 对10取模会导致经常的冲突,比如13和23,对10取模之后都是3,这种情况下叫做hash算法的冲突 为了解决冲突,需要在一个hash节点上使用链表数据结构来保存冲突的多个数据。 */ #include #include #
yincheng01
·
2013-12-13 00:00
基于visual
Studio2013
解决面试题之0205查找路径
题目解决代码及点评/* 在一棵树中,获取和为某个值的所有路径 比如有树如下 1 /\ 23 /\/\ 5767 如果和为10,那么可以得到两个,有两个路径1、2、7和1、3、6 */ /*标准输入输出头文件*/ #include /*标准库中栈容器头文件*/ #include usingnamespacestd; /*树节点结构体*/ typedefstructBiTNode { i
yincheng01
·
2013-12-13 00:00
基于visual
Studio2013
解决面试题之0204最大子集数组
题目解决代码及点评/* 在一个数组里n0,n1,n2...nk中,定义(0 usingnamespacestd; intmain() { inta[10]={1,-2,3,10,-4,7,2,-5,-1,-2}; intmax=0; intsum=0; //通过循环遍历数组 for(inti=0;imax) { max=sum; } } //输出max值 cout<
yincheng01
·
2013-12-13 00:00
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他