【题目】输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。【分析】比较直接的笨方法就是遍历每一个,只要是偶数,就拿出来,将后面的数依次往前挪动,将偶数填放在数组的最后方,每碰到一个偶数就要挪动o(n)个数字,那么总的时间复杂度就是O(n^2),效率太低,如何改善,可以观察数组如果要奇数位于偶数之前,也就是顺序颠倒的要换过来,从两头往中...
                            
                            
                                分类:
编程语言   时间:
2015-06-07 14:36:30   
                                阅读次数:
133
                             
                    
                        
                            
                            
                                题目描述请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。/*
struct TreeNode {
    int val;
    struct TreeNode *left;
    struct TreeNode *right;
    TreeNode(int x) :
            va...
                            
                            
                                分类:
其他好文   时间:
2015-06-07 09:31:59   
                                阅读次数:
208
                             
                    
                        
                            
                            
                                前两天参加了福富在福大的宣讲会,并且参加了笔试,最后一道大题,这里讲一下当时我的解法,大概的题意是这个样子的,只能使用c的库,实现一个函数void MakeString(char *pStr,int n)(ps:这里的函数名是我现在取的,想不起来考题给的是什么了),函数要求是以'\0'结尾的字符串pStr,一个需要右移的字符个数n,实现类似输入这样MakeString("abcdefghi",2)...
                            
                            
                                分类:
其他好文   时间:
2015-06-06 15:00:55   
                                阅读次数:
119
                             
                    
                        
                            
                            
                                题目描述: 
有两个排序数组A1和A2,内存在A1的末尾有足够多的空余空间容纳A2,请实现一个函数,把A2中的所有数字插入到A1中并且所有的数字是有序的。#include
using namespace std;
void Merge(int A1[],int n,int A2[],int m)
{
    int i = n-1; int p = n+m-1;
    int...
                            
                            
                                分类:
编程语言   时间:
2015-05-28 16:18:46   
                                阅读次数:
170
                             
                    
                        
                            
                            
                                题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分思路:声明两个指针,一个指向该数组的头,另一个指向该数组的尾,将头指针指向的第一个偶数和尾指针指向的第一个奇数交换即可,直到头指针大于尾指针跳出循环。代码如下:void t...
                            
                            
                                分类:
编程语言   时间:
2015-05-22 16:26:40   
                                阅读次数:
101
                             
                    
                        
                            
                            
                                位运算:左移:m>n将m右移n位,右移后高位补充的是符号位,负数补充1,整数补充0.(正数的边界值为(1,ox7FFFFFFF),负数的边界值为(ox80000000,oxFFFFFFFF))题目一:请实现一个函数,输入一个整数,输出这个数的二进制表示中1的个数。思路一:将二进制数i与1相与,判断是...
                            
                            
                                分类:
编程语言   时间:
2015-05-21 21:51:21   
                                阅读次数:
155
                             
                    
                        
                            
                            
                                位运算:左移:m>n将m右移n位,右移后高位补充的是符号位,负数补充1,整数补充0.(正数的边界值为(1,ox7FFFFFFF),负数的边界值为(ox80000000,oxFFFFFFFF))题目一:请实现一个函数,输入一个整数,输出这个数的二进制表示中1的个数。思路一:将二进制数i与1相与,判断是...
                            
                            
                                分类:
编程语言   时间:
2015-05-21 19:34:46   
                                阅读次数:
179
                             
                    
                        
                            
                            
                                题目:
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分。
解析:题目没说相对位置不变,用两个游标指向首尾,前面的偶数与后面的奇数交换即可。
/*功能函数*/
void ReOrderOddEven(int a[], int length)
{
	int i,j;//定义两个游标
	int temp;
	if ...
                            
                            
                                分类:
编程语言   时间:
2015-05-13 21:56:35   
                                阅读次数:
182
                             
                    
                        
                            
                            
                                替换空格:请实现一个函数,把字符串中的每个空格替换成“%20”例如输入“we are best ”,则输出we%20are%20best此题的实际意义是在网络编程中,如果URL中含有特殊的字符如空格、‘#’等可能导致服务器无法获取正常的参数,我们需要将特殊字符转换成服务器可以识别的字符。准换的规则是...
                            
                            
                                分类:
其他好文   时间:
2015-05-11 17:52:34   
                                阅读次数:
133
                             
                    
                        
                            
                            
                                题目描述 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 最直接的方式,直接使用 STL。假设字符串的长度是n,那么对于每个空格字符,需要移动后面 o(n) 个字符,因此对含有 o(n) 个空...
                            
                            
                                分类:
其他好文   时间:
2015-05-10 18:45:58   
                                阅读次数:
133