摘要: 题目:实现一个函数,要求吧字符串中的所有空格替换成“%20”。例如“hello world " ——> ”hello%20world%20"实际背景:在网络编程中,如果URL参数中含有特殊的字符,如空格、'#'等,导致服务器端无法识别时,就把这些特殊的字符转换成可以识别的字符。规则:%加上十六进制的ascii码,例如‘#’的ascii码是0x23(16进制),就替换成%23,看下图地址栏中,输入“hello#hao" 分析:注意:在c语言中存字符串最后一位是认为”\0“的,例如a[] = "12",那么a的长度为3,a[0 阅读全文
posted @ 2013-04-21 23:12 jihite 阅读(7949) 评论(3) 推荐(2) 编辑
摘要: 问题:在一个二维数组中,每行的元素从左到右是递增的,每列元素从上到下是递增的。写一个函数,查找一给定的元素是否在此数组中输入:一个二维数组,和一个待查找的数输出:待查找的数在数组中输出“YES",否则输出”NO"原始思路:最简单思路就是暴力搜索,遍历一遍数组中的元素时间复杂度为O(n2)。但是这样就没有用问题的已知条件(从左到右、从上到下递增),因此不是个好的解法改进1:从第一行开始找,找到待查元素大的,如果还没找到,接着从第二行开始找,直到找到或到最后一个元素为止(如图),但是如果带查找的元素在最后,还得遍历到最后,时间复杂度还是O(n2) 改进2:上来在随机在里面挑一个 阅读全文
posted @ 2013-04-21 00:28 jihite 阅读(2412) 评论(0) 推荐(4) 编辑