NI笔试——大数加法

NI笔试:

1.找出字符串第一次出现的字符。用数组建立哈希表,然后再扫描字符串并判断次数是否为1。

2.大数加法,即字符串加法。因为之前写过乘法,就以为是乘法。然后就把乘法写上去了····= =

好了,看一下加法的思路。

要不要太简单,用俩数组,先把字符串每个位转换成数字存到这俩数组里,然后对每一位进行加和。

代码是拿别人的。= =

void Add(char s1[],char s2[]) //需要两个字符串参数&&无返回值
{
int num1[M],nm2[M];
int i,j;
len1=strlen(s1);
len2=strlen(s2);
for(i=len1-,j=;i>=;i--)//num[0]保存的是低位
num1[j++]=s1[i]-'';
for(i=len2-,j=;i>=;i--)
num2[j++]=s2[i]-'';
for(i=;i<M;i++)
{
num1[i]+=num2[i];
if(num1[i]>)
{
num1[i]-=;
num1[i+]++;
}
}   for(i=M;(i>=)&&(num1[i]==);i--)//找到第一个不是零的数
{
if(i>=)
for(;i>=;i--)
printf("%d",num1[i]);
else
printf("0\n")
}

3.第三道题是一个二维数组,二维数组里有一些数,然后找到一条和最小的路径。

我觉得和那个最长公共子序列很像。动态规划。等空下来再思考这题。

上一篇:GitLab配置SSH key


下一篇:您使用的私钥格式错误,请检查RSA私钥配置,charset = utf-8