![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程练习
文章平均质量分 53
小书包2333
格局,追求,战斗力
展开
-
第一章 正则表达式
1.1简介正则表达式是高级的文本模式匹配、抽取、或文本形式的搜索和替换功能提供了基础。正则表达式(简称regex)是由一些字符或特殊符号组成的字符串,他们描述了模式的重复或表述多个字符,于是正则表达式能够按照某一模式匹配一系列有相似特征的字符串。Python使用re模块来支持正则表达式。 符号 描述 * 匹配0次或者多次前面出现的正则表达式 + 匹...原创 2018-06-01 08:54:07 · 321 阅读 · 0 评论 -
去除字符串中空格的方法(递推法)
//去掉字符串中的空格2,递归 //找到一个空格,将后面的字符逐个前移,去掉一个空格 //去掉一个空格的字符串,可以看做新的字符串,还是用上面的方法,递归。 char *alltrim2(char *str) { char *p=str; while(*p!=0 && *p!=' ') //找到第1个空格或到结束 { p++; } //如果找到空格 if(*p原创 2017-04-20 18:08:29 · 2006 阅读 · 0 评论 -
京东笔试之异或运算符
题目描述输入:三行数据, n //二进制的位数 1101 //类似这样的二进制数 0011 输出:14 //经过异或运算之后的十进制数解题思路#include <iostream>using namespace std;//计算2^(n)int get(int n){ int m = 1; for (int i = n; i>0; i--) {原创 2017-04-08 20:57:22 · 222 阅读 · 0 评论 -
京东笔试之石头分堆
题目描述小明得到了n个石头,他想把这些石头分成若干堆,每堆至少有一个石头。他把这些石堆排在一条直线上,他希望任意相邻两堆的石头数都不一样。小明最后的得分为石头数大于等于k的石堆数,问他最多能得多少分。 严格地,小明把n个石头分成了m堆,每堆个数依次为a1,a2,…..,am。要求满足: 1、ai≥1(1≤i≤m) 2、ai≠ai+1(1≤i<m) 3、a1+a2+…+am=n 小明想知道a原创 2017-04-08 23:48:31 · 971 阅读 · 0 评论 -
一维数组查重
题目描述:给定一个一维数组,将其中重复的数字去掉,只保留最后一次出现的数字。输入:5 1 2 3 4 3输出:1 2 4 3解题思路:由于要保留最后一次出现的数字,可以从数组后面向前面进行匹配,如果重复,将墙面的设置为-1;源码:#include using namespace std; int main() { int n; cin >> n; int a[原创 2017-03-25 17:48:54 · 640 阅读 · 0 评论 -
数组传参以及二位数组查找
数组基础1.空间:连续内存且顺序存储数据,声明数组时预分配内存大小,可能导致空闲内存得不到使用,空间效率低. 2.时间:可以根据下标在O(1)时间内读写元素,尤其适合简单哈希表,时间效率高. 3.数组指针的关系:#include<iostream>using namespace std;int getsize(int data[])//数组作为参数传入,自动退化为同...原创 2018-04-01 16:51:27 · 206 阅读 · 0 评论 -
字符串基础和替换空格
字符串基础1.c++每个字符串都以字符’\0’作为结尾,每个字符都有一个额外字符的开销,注意越界. 2.常量字符串存储:c++将其放到单独的一个内存区域,当几个指针赋值给相同的常量字符串时,实际指向相同的内存地址.int main(){ char str1[] = "hello world"; char str2[] = "hello world"; cha...原创 2018-04-03 09:41:28 · 116 阅读 · 0 评论 -
链表基础以及从尾到头打印链表
链表基础链表是一种动态的数据结构,插入一个新节点时,为其分配内存,然后调整指针的指向,空间利用率高. 1.单向链表的节点定义:struct listnode{ int value; listnode *next;} 2.在链表的末尾追加一个节点: 在这里主要解释一下函数的第一个参数pHead是一个指向指针的指针,因为当我们传入一个空链表时,新插入的节点就是链表的...原创 2018-04-03 21:46:53 · 194 阅读 · 0 评论