1 字符数组和字符串数组的区别:经常分不清字符数组和字符串数组的初始化。
2 动态二维数组的申请:在写acm题的时候,有时候会经常使用二维数组,但是每次使用输入:int **p = new int [n][10]的时候,总会会报错(报:不能开创10个整型长度的空间,也就是不允许用常量来申请空间,所以经常会申请失败,最后只能默认使用int p[n][10],这样的形式)
3 用指针数组存储字符串数组:在上课的时候听的有点囫囵吞枣,下课后没有消化,以至于在广工的ACM比赛时,想要用的时候,不会用。例如其中的一道题:输入多组形如<数据类型> <变量名>的字符串,判断其所占用空间大小:当想要输入 :int asd,然后将这个字符串传入函数judge()【用来判断其所占空间,然后返回空间的值】,但是当想要建立字符串数组来存储这些字符串数组,却创建失败。(我的创建方法是:string a = new string [n];)最后编译不通过,想要用指针数组,却不会用,因此放弃此题了。
题目:
给定两个整型数组,本题要求找出不是两者共有的元素。
输入分别在两行中给出两个整型数组,每行先给出正整数N(≤20),随后是N个整数,其间以空格分隔。
在一行中按照数字给出的顺序输出不是两数组共有的元素,数字间以空格分隔,但行末不得有多余的空格。题目保证至少存在一个这样的数字。同一数字不重复输出
10 3 -5 2 8 0 3 5 -15 9 100
11 6 4 8 2 6 -5 9 0 100 8 1
3 5 -15 6 4 1
题目分析:
此题的本质就是:找出两个数组的并举,属于数组的基本问题
解题思路【代码思路】:
核心技术总结:
解决过程中遇到的问题,如何解决;
最难的问题还是如何排除掉并集后的相同元素,当时想了很久,一直没想出来;
最后是考虑,并集数组依次放入到一个新的数组,然后每次往新的数组里添加数的时候就让这个数与已在数组中的数比较,看是否有相同的,有的话就不输入;没有就输入,最后得到的新数组,就是我们要的数组;、。
原文:https://www.cnblogs.com/aresjohnson/p/10085810.html