字符串加密
有一种技巧可以对数据进行加密,它使用一个单词作为它的密匙。下面是它的工作原理:首先,选择一个单词作为密匙,如TRAILBLAZERS。如果单词中包含有重复的字母,只保留第1个,其余几个丢弃。现在,修改过的那个单词死于字母表的下面,如下所示:
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
T R A I L B Z E S C D F G H J K M N O P Q U V W X Y
上面其他用字母表中剩余的字母填充完整。在对信息进行加密时,信息中的每个字母被固定于顶上那行,并用下面那行的对应字母一一取代原文的字母(字母字符的大小写状态应该保留)。因此,使用这个密匙,Attack AT DAWN(黎明时攻击)就会被加密为Tpptad TP ITVH。
请实现下述接口,通过指定的密匙和明文得到密文。
Java 最大堆排序
Java 写得最大堆排序代码,给大家参考下,自己刚写的。
链表排序实现
//输入一个数列以0为结束标志,建立链式线性表,查找其中最大的数并输出删除释放节点,然后对剩余的进行排序,并输出释放节点。
约瑟夫环计算
/生成一个长度为21的数组,依次存入1到21;建立一个长度为21的单向链表,将上述数组中的数字依次存入链表每个结点中;
//将上述链表变为单向封闭(循环)链表;从头结点开始数,将第17个结点删除,将它的下一个结点作为新的头结点;重复上述过程,
//直到该链表中只剩一个结点,显示该结点中存入的数字。
计算单词个数
//编一个程序,读入用户输入的,以"."结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。
//(凡是以一个或多个空格隔开的部分就为一个单词)
二叉遍历树,逆中序遍历
//输入一个数列以0为结束标志,建立二叉遍历树,并对其进行逆中序遍历,释放空间,0代表null
计算字母输入次序
计算26个字母的输入次序,不区分大小写
输入任意一个字符串,判断26个字符的输入次序,并输出
字符串连接
题目描述:
不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。
输入:
每一行包括两个字符串,长度不超过100。
输出:
可能有多组测试数据,对于每组数据,
不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。
输出连接后的字符串。
IP地址合法性判断
题目描述:
输入一个ip地址串,判断是否合法。
输入:
输入的第一行包括一个整数n(1<=n<=500),代表下面会出现的IP地址的个数。
接下来的n行每行有一个IP地址,IP地址的形式为a.b.c.d,其中a、b、c、d都是整数。
输出:
可能有多组测试数据,对于每组数据,如果IP地址合法则输出"Yes!”,否则输出"No!”。
最大的两个数
输入一个四行五列的矩阵,找出每列最大的两个数。
输入:
输入第一行包括一个整数n(1<=n<=1000),接下来的四行每行包括五个整数。代表一个四行五列的矩阵,矩阵元素全部是整数。
输出:
可能有多组测试数据,对于每组数据,按照样例输出的格式将每列最大的两个数输出,如果最大的两个数中的一个数在这一列中有多个相同的值,则行值取行值小的那一个。
输出时要保留原矩阵的行列顺序,即在原矩阵中行值小的,在输出矩阵中的行值依然小。
找字符位置
对给定的一个字符串,找出有重复的字符,并给出其位置,如:abcaaAB12ab12
输出:a,1;a,4;a,5;a,10,b,2;b,11,1,8;1,12, 2,9;2,13。
大数相加实现
输入包括两个数a和b,其中a和b的位数不超过1000位。
奇偶校验实现
输入一个字符串,然后对每个字符进行奇校验,最后输出校验后的二进制数(如'3’,输出:10110011)。
二级排序实现
二级排序,
两个关键字a,b排序
先按a排序,若a相同,再按b排序
最大数,排序
//输入一系列整数,将其中最大的数挑出,并将剩下的数进行排序。
建立二叉树
//编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。
//例如如下的先序遍历字符串:
//ABC##DE#G##F###
//其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。
奇偶阶乘计算
输入n,求y1=1!+3!+...m!(m是小于等于n的最大奇数)y2=2!+4!+...p!(p是小于等于n的最大偶数)。
中位数计算
中位数定义:一组数据按从小到大的顺序依次排列,处在中间位置的一个数(或最中间两个数据的平均数).
给出一组无序整数,求出中位数,如果求最中间两个数的平均数,向下取整即可(不需要使用浮点数)
123循环报数,遇3退出
n个人排一圈123报数,报到3的人退到圈外,直到剩最后一个人为止
IP流量检测
编写程序,监控本地网络,捕获一段时间内以本机为源地址或目的地址的IP数据包(不包括以广播形式发出的数据包),统计IP数据包的信息,列出本机与其他主机之间不同协议类型IP数据包的流量。