1.有两个不等长的数组
里面放的都是随机数,写出将两个数组合并后按从小到大顺序排列
2.将一个字符串倒序
比如abcd 输出dcba
3.写出一个双向链表的查找和删除操作
4.写一段正则表达式验证和替换的操作欢迎大家给出给出可用的代码。或者也可以提出其他的问题,大家一起作作。
里面放的都是随机数,写出将两个数组合并后按从小到大顺序排列
2.将一个字符串倒序
比如abcd 输出dcba
3.写出一个双向链表的查找和删除操作
4.写一段正则表达式验证和替换的操作欢迎大家给出给出可用的代码。或者也可以提出其他的问题,大家一起作作。
2.字符串按顺序写到数组,然后反序拼成string
3.好久没用过c了,up
4.总得说说验证什么dd吧
Dim revString As String
' Returns "GFEDCBA"
revString = StrReverse(myString)
Me.Response.Write(revString)
第2题
int [] intary = new int[intarray1.Length + intarray2.Length];
int inttmp ;
intarray1.CopyTo(intary,0);
intarray2.CopyTo(intary,intarray1.Length);
for (int i=0;i<intary.Length;i++)
{
int k = intary[i];
for (int j=0;j<=i;j++)
{
if (intary[j]>k)
{
inttmp = intary[j];
intary[j] = k;
intary[i] = inttmp;
k = inttmp;
}
}
}
foreach (int i in intary)
{
Response.Write (i.ToString ()+ " ");
}
.net自带排序arryList.Sort(new sortByMax());
//排序类
public class sortByMax: IComparer
{
public int Compare(object x,object y)
{
if((int)x>(int)y)
return 1;
else if((int)x == (int)y)
return 0;
else
return -1;
}
}
msdn上的解释是非稳定排序
继承IComparer接口
private string DelExplain(string strLine) //消除注释
{
//开始替换
//替换行首到行尾的注释
strLine = System.Text.RegularExpressions.Regex.Replace(strLine,"(^/{2,})[^*].*$"," C#注释字段");
//替换不是行首到行尾的注释
//如果该行包括 "" 语句
string pattern =".*\".*/{2,}.*$";
Regex strRegex = new Regex(pattern);
if(strRegex.IsMatch(strLine))
{
Match match = strRegex.Match(strLine);
strLine = strLine.Substring(0,strLine.LastIndexOf("\""));
string strChoose = match.Value;
strChoose = strChoose.Substring(strChoose.LastIndexOf("\""));
pattern = "/{2,}.*$";
strLine = strLine + System.Text.RegularExpressions.Regex.Replace(strChoose,pattern," C#注释字段 ");
}
else
{ //该行不包括 ""
pattern = @"/{2,}.*$";
strLine = System.Text.RegularExpressions.Regex.Replace(strLine,pattern," C#注释字段");
}
pattern = "[<][!].*[>]"; //web注解
strLine = System.Text.RegularExpressions.Regex.Replace(strLine,pattern," Web 注释字段 ");
return strLine;
}
如果是C#的话124很简单的:
1 先用hashtable,再用arraylist就ok了
2 arrayllist中的sort方法
4 这个只要对正则了解就知道怎么作了。
1:
private char[] aa = {'3','1','2'}; private char[] bb = {'7','3','6','1'}; char[] sum = new char[aa.Length+bb.Length];
aa.CopyTo(sum,0);
bb.CopyTo(sum,aa.Length);
Console.WriteLine(sum);
Array.Sort(sum);
Console.WriteLine(sum);
2:
string cc = "你好吗";
char[] dd = cc.ToCharArray();
Array.Reverse(dd);
Console.WriteLine(dd);
忘光光了其实排序算法就那么几种, 稳定的排序, 非稳定排序
要是面试的把我搞毛了,我要他亲手写一个我没见过的算法来看看,然后再给他算一下效率.我拿着数据结构一个一个的看是不是真没见过的,在说了,好多算法都集成在.net中了?还用他去研究么?你在用的时候知道用就行了,是不是,大家都是做开发的,哪有那么多经历和时间去研究算法平常用的两个排序 中分和冒泡记住就行了本来就是数学问题
我从小到大数学就不差,就是大学没好好学,学起来也不一定差,做程序的逻辑思维哪一点差了?
系统函数如果够用我是不会自己再写一个的。
不过我还真的不会,呵呵。
也不难,只要在机子上操作几个例子就很容易了,刚毕业的都会。不就是教材后面的试题嘛!
int[] a2 ={321,432,556,7,88,465,8,89679,23344,7765,3453};
ArrayList a3 = new ArrayList();
foreach(int ii in a2){
a3.Add(ii);
}
foreach(int ii in a1)
{
a3.Add(ii);
}
a3.Sort(0,a3.Count,null);
a3.Reverse();
foreach(int ii in a3){
Response.Write(ii.ToString()+"<br>");
}
//=============颠倒字符串==============
string b = "aaaabbbbbccccc";
ArrayList b1 = new ArrayList();
for(int i=0;i<b.Length;i++){
b1.Add(b.Substring(i,1));
}
b1.Reverse();
foreach(string i1 in b1){
Response.Write(i1);
}
<html>
<head>
<script language="JavaScript">
function re(){ var a,a1,a2,a3,c,c1
c = ""
c1 = ""
a = document.form1.wb.value
a1 = document.form1.wb1.value
a2 = document.form1.wb2.value//获取参数
var re = new RegExp(a1,"ig")//设置正则
a = a.replace(re,a2)//替换
document.form1.wb3.value = a//输出
}
</script>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><body>
<form name="form1" method="post" action="">
<p> <input name="wb" type="text" id="wb"> 原始字符</p>
<p> <input name="wb1" type="text" id="wb1"> 需要替换的字符
<input name="wb2" type="text" id="wb2"> 替换的字符 </p>
<p> <input name="wb3" type="text" id="wb3">
<input type="button" onClick="re()" name="Button" value="开始替换">
</p>
</form>
</body>
</html>