前天廣聯達來青軟實訓做宣講,結束之後就考的這份題。
一、判斷一個字符串是否是迴文字符串
package com.bishi;
public class Huiwen {
public static void main(String[] args) {
boolean f=Huiwen.huiwen("上海自來水來自海上");
if(f){
System.out.println("是迴文數字");
}else{
System.out.println("不是迴文數字");
}
}
public static boolean huiwen(String str){
String str2;
StringBuffer sb1,sb2;
sb1=new StringBuffer(str);
sb2=sb1.reverse();//StringBuffer中的一個方法,可以將內容本末置換
str2=new String(sb2);
if(str.equals(str2)){
return true;
}
return false;
}
}
二、從M個不同字符中任取N個字符的所有組合
這個當時做的時候暈了,沒繞出來。感覺讓我不用程序,用數學做都有點亂。回去之後在網上好不容易找到這個java的的代碼,沒太弄明白,程序好像也有點小問題。
package com.bishi;
public class Pailie {
static void find(String source, char[] result, int n)
{
char[] arr = source.toCharArray();
if (n == 1)
{
int i = 0;
while (i < arr.length) {
result[result.length - 1] = arr[i++];
System.out.println(new String(result));
}
}
else
{
int i = arr.length, j, k = 0;
for (j = 0; result[j] != 0; j++)
;
for (; i >= n; i--)
{
result[j] = arr[k++];
result[j + 1] = '\0';
find(source.substring(k), result, n - 1);
}
}
}
public static void main(String args[])
{
final int n = 2;
String source = "ABCDEFGHI";
char[] result = new char[n];
if (n > 0 && source.length() > 0 && n <= source.length()){
find(source, result, n);
}
}
}
三、對於任意輸入的一個英文字符串,將其中的大寫轉化爲小寫,小寫轉化爲大小(不能使用toLowerCase()和toUpperCase())
package com.bishi;
public class Daxiaoxiezhuanhuan {
public static void main(String[] args) {
zhuanhuan("aPsxLMye");
}
public static void zhuanhuan(String str){
StringBuffer sb=new StringBuffer();
char[] crs=str.toCharArray();
for (int i = 0; i < crs.length; i++) {
//判斷是否爲大寫字母
if(crs[i]>=65&&crs[i]<=90){
char a=(char) (crs[i]+32);
crs[i]=a;
}
//判斷是否爲小寫字母
else if(crs[i]>=97&&crs[i]<=122){
char b=(char) (crs[i]-32);
crs[i]=b;
}
sb.append(crs[i]);
}
System.out.println(sb.toString());
}
}
四、數據庫的分頁(所有數據庫通用方法)
這裏我以student表爲例子
select * from (
select * from sa.student where stid not in (
select * from (select stid from sa.student where rownum<=(n-1)*r order by stid desc))
order by stid desc)
where rownum<=r;
n:當前爲第幾頁
r:每頁顯示多少條信息
五、你用過的所有軟件中你覺得哪個最優秀?它好在哪裏?你覺得還需要改進的地方是?
這個開放式的題目。我當時答的是QQ影音。
六、設計題。設計單機版人機對戰的五子棋
1.設計出程序思路和方案。
2.畫出程序核心的模塊流程圖
這個也是,我就說了一下類的設計,各個類中某些特殊屬性的作用,棋盤的設計,勝負平局的判定。大家可以按照自己思維方式答。
=================================================================================================================
自己覺得 這份題答得還可以,但是結果我們班只有一個本科的男的通過了筆試,去參加了面試,結果要明後天纔出來。
學歷真的是塊敲門磚,就算你筆試答的再好,他們在批閱的時候,當看到你的學歷是專科,在心裏會直接給你扣掉30分甚至更多。
只能說自己上學時沒好好努力,怨不得別人。所以還在上學的孩子們,好好學吧。