中缀表达式转前缀和后缀表达式

之前笔试中国电信IT研发中心的时候,遇到了几个前、中、后缀表达式的相互转换,当时忘得差不多了,今天好好把该方面的知识好好复习,并把相关代码和思路自己缕了一遍: 将中缀表达式转换为前缀表达式: 遵循以下步骤: (1) 初始化两个栈:运算符栈S1和储存中间结果的栈S2; (2) 从右至左扫描中...

2016-10-06 22:23:49

阅读数 477

评论数 0

二叉搜索树的增删查

今天把搜索二叉树的思路又理了一遍,把代码又从头到尾敲了一遍,各位看客就不要在意代码粗糙和内存溢出了,主要把插入和删除的过程理了一遍,其中比较复杂的地方就是搜索二叉树的删除,涉及了很多次的指针重新指向,比较容易晕。另外,对于二叉树,在上溯的时候要特别注意根节点这个特殊的临界状态(大部分情况把根节点的...

2016-09-05 16:48:44

阅读数 282

评论数 0

剑指offer(二)

源码如下: //面试题3 二维数组的查找 class two_demision_find { public: two_demision_find(int (*tem)[4],int n) { for(int i=0;i<n;i++) { vector str; fo...

2016-09-04 16:43:04

阅读数 405

评论数 0

多线程共享资源

线程共享的环境包括:进程代码段、进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户ID与进程组ID。     进程拥有这许多共性的同时,还拥有自己的个性。有了这些个性,线程才能实现并发性。这些个性包括: ...

2016-09-01 19:50:28

阅读数 347

评论数 0

图的基本算法

图在程序开发中是一个比较重要的数据结构,其基本的算法如:广度优先(BFS)、深度优先(DFS)是图算法的基本入门算法,现在总结如下: #include #include #include using namespace std; struct node_edge { int e...

2016-08-30 20:08:44

阅读数 249

评论数 0

实现strtok_r()函数

Linux中的字符串分段函数strtok()函数是不可重入和线程不安全的,所以后来又提供了相应的线程安全和可重入的函数strtok_r()函数,然而在window系统中对应的是strtok_r()函数,为了详细了解函数的代码结构,我按照相应的功能,自己编写了一个类似功能的字符串分割函数,代码如下,...

2016-08-25 20:48:42

阅读数 405

评论数 0

leetcode算法题(一)

1、判断是否是颠倒字母顺序构成的字 class Anagram { public: vector anagrams(vector &strs) { map > group; for (const auto &s : strs) { string key ...

2016-08-24 15:40:07

阅读数 247

评论数 0

华为OJ算法题(一)

1、火车进站 class train_station { public: void get_result() { int num=0; int tem=0; cin>>num; int si...

2016-08-24 15:19:07

阅读数 307

评论数 0

导致索引失效的可能情况

如下是可能导致索引失效的情况:   1.隐式转换导致索引失效.这一点应当引起重视.也是开发中经常会犯的错误.      由于表的字段tu_mdn定义为varchar2(20),但在查询时把该字段作为number类型以where条件传给Oracle,这样会导致索引失效.      错误的例子...

2016-08-23 15:50:49

阅读数 3576

评论数 0

聚集索引和非聚集索引详解

转载地址:http://www.cnblogs.com/aspnethot/articles/1504082.html 聚集索引   一种索引,该索引中键值的逻辑顺序决定了表中相应行的物理顺序。   聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,后者按姓氏排列数据。由于聚集索引...

2016-08-23 15:06:24

阅读数 304

评论数 0

数据库delete和truncate

1、在功能上,truncate是清空一个表的内容,它相当于delete from table_name。 2、delete是dml操作,truncate是ddl操作;因此,用delete删除整个表的数据时,会产生大量的roolback,占用很多的rollback segments, 而trunc...

2016-08-23 11:27:19

阅读数 220

评论数 0

数据库使用索引的利弊

索引概念:        索引是由用户创建,能够被修改和删除的,实际存储在数据库中的物理存在,它是某一个表中一列或者若干列值的集合和相应的指向表中物理标志这些值的数据页的逻辑指针清单。 索引的优点:        第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。  ...

2016-08-22 22:17:32

阅读数 353

评论数 0

多线程环境下使用c++输出流和printf函数的区别

今天在学习Linux多线程编程的时候,出现了一个比较怪异的现象,在使用读写锁访问并打印数据时出现了输出数据混乱的现象,因为多线程编程大部分用的是c的函数,但由于本人对c++比较熟悉,所以习惯性地在c代码中混杂一些c++的语句,尤其是c++的输出流cout,但会出现如上的问题,后来我就测试性地把co...

2016-08-18 22:30:58

阅读数 2824

评论数 4

c++程序连接及装载过程详解

今天看到一位老师写的精彩的关于c++程序的编译和链接过程的详细过程的介绍,看完之后很多问题都豁然开朗,我也试着按着老师的步骤一步步跟踪了代码,学到了很多东西,所以把老师的文章原封不动的copy过来,供今后参考用(详细链接:http://tech.meituan.com/linker.html) ...

2016-08-13 20:53:26

阅读数 1987

评论数 0

基类和派生类内存详解

昨天室友问了我一个c++基类和派生类的内存方面的问题,由于当时不能给出确切的答案,所以今天在VS上面一个个测试了一遍,今记录下来。  问题归结为如下代码: class A { public: A():a(0) { cout<<"this is A's contru...

2016-08-12 19:09:10

阅读数 787

评论数 0

输入输出流>>和<<操作符对字符串操作的一些问题详解

一直以来我对string和char*以及char[]在输入输出时的细节比较模糊,今天专门写了个demo把问题测试了一遍,记录如下: 首先请看如下代码: char *ch="abcd"; cin>>ch; cout 猜猜上面会出现什么情况?没错,程序会崩溃,...

2016-08-10 17:48:43

阅读数 381

评论数 0

Python中__init__.py文件的作用

在创建python包的过程中,IDE都会在包根目录下创建一个__init__.py文件,该Python文件默认是空的.目录结构如下: Pycharm下的package树结构: 在Finder中的目录结构: 从Finder中的目录就可以看出来,每个package实际上是一个目录(Dir...

2016-08-08 11:18:23

阅读数 4837

评论数 0

基于Python的二叉树遍历算法

今天用Python把二叉树的三种遍历都实现了一遍,用作学习Python的练手程序: #/usr/bin/python #coding: utf-8 from collections import deque #二叉树的节点结构 class Node(): def __init__(sel...

2016-07-30 15:04:00

阅读数 498

评论数 0

剑指offer面试题31、34、36、38

剑指offer面试题31、34、36、38代码如下: //面试题31:连续子数组的最大和 class Max_sum { public: int get_maxsum(int num[],int len) //(动态规划) { if(num==nullptr||len<=0) ...

2016-07-28 16:25:39

阅读数 300

评论数 0

Python不能对字符解码的问题解析

今天在做简单的Python爬虫时遇到了编码错误的问题,查找资料得到如下结论:(转载记录,便于今后查找) 报错的异常是   UnicodeDecodeError: ‘gbk’ codec can’t decode bytes in position 2-3: illegal...

2016-07-27 21:46:41

阅读数 2592

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭