Python中文编码过程中遇到的一些问题 首先,要明白encode()和decode()的区别。encode()的作用是将Unicode编码的字符串转换为其他编码格式。例如:st1.encode("utf-8") 这句话的作用是将Unicode编码的st1编码为utf-8编码的字符串decode()的作用是把其他编码格式的字符串转换成Unicode编码的字符串。例如:st2.decode("utf-8") 这句话的作用是
局域网使用的IP地址范围 局域网可用的IP地址范围为: A类地址:10.0.0.0 - 10.255.255.255 B类地址:172.16.0.0 - 172.31.255.255 C类地址:192.168.0.0 -192.168.255.255 以上IP是都是属于局域网,但不一定是同一个局域网。要检测两台电脑是否在同一个局域网,可以再一台电脑上ping另外一台电脑的IP.能ping
N皇后问题解法及解的个数 1、将第一个皇后放置在第一行的第一个空格里 2、对于第二行,从第一个空格开始寻找不与第一行的皇后冲突的空格。找到的第一个不冲突的空格是第2个。 3、对于第三行,这时已经找不到与之前放置的两个皇后不冲突的空格了。把当前行恢复初始状态,返回到上一行。 4、在当前行皇后所占的空格之后寻找一个不与之前皇后冲突的位置。有两种情况,如果找打了则把当前行的皇后移动到该位置,然后处理下一行。如果直到最后当前行的最后一个空格也没有找合适的位置,则把当前行恢复初始状态,继续回溯到上一行。 5、把最后一个皇后成功安置在最
VS2008无法执行添加/移除操作,因为代码元素"***"是只读的 有时候在给某个控件添加事件处理函数时会遇到这样的问题“无法执行添加/移除操作,因为代码元素"***"是只读的” 搜了下往上的解决方法,可行的方法是:关闭工程,打开你的工程文件夹,删除.ncb文件然后重新打开工程即可。
VS2008恢复默认界面设置 经常不小心改变了VS2008的界面设置,一个个的拖回去很麻烦。有什么方法恢复VS的默认环境设置呢?网上查了下这个方法很好用!tools(工具)---->import and export settings wizard(导入导出设置)---> reset all settings (重置所有设置)--->保存设置/仅重置设置--->选择visual c++ development settings(重置为visual c++开发设置)--->完成!
求二叉树的深度和宽度 二叉树的深度:从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。二叉树的宽度:二叉树的每一层中都有一定数量的节点,节点数最多的那一层的节点数叫做二叉树的宽度。假设二叉树的节点有如下数据结构:struc Node{int num;Node* pLeft;Node* pRight;}1)求二叉树的深度根据刚才对二叉树深度的说明
按层遍历二叉树(队列实现) 按层遍历二叉树的思路: 1)创建一个队列用于保存指向Node节点的指针 2) 每遇到一个节点就遍历该节点,然后将该节点不为空的孩子压入栈中 3) 从栈中取出一个节点,回到第二步
两种方式遍历二叉树--递归方式和非递归方式 用递归的方法遍历二叉树很简单,但是非递归的遍历二叉树就比较困难了。在非递归方法中,我们需要栈stack的帮助。以下是分别用递归方式和非递归方式写的前、中、后序遍历二叉树的方法,经过验证结果是正确的。
单件模式(Singleton Pattern)之C++实现 单件模式确保一个类只有一个实例,并提供一个全局访问点。#include #include using namespace std;class Singleton{public: static Singleton* GetInstance(); void print(); void write(string strTmp);private: Singleton(); sta
设计模式之装饰者模式Decorator Pattern 近来在读《Head first设计模式》这本书,感觉很不错只是书中的代码是用Java写的。因为我熟悉的是C++,于是自己写了C++的例子程序。首先说说我的感受吧,学C++的话,先看《C++ Primer》搞明白了C++的各种语法,对封装、继承、多态有初步的认识。然后学点设计模式,设计模式是针对具体事例的解决方案,是前人编程的经验,很值得借鉴! 说个具体事例吧,在买电脑的时候我们通
c++参数传递的三种方式 c++参数传递的三种方式1、按值调用: 形如 int fun(int x)2、指针调用:形如 int fun(int* p)3、引址调用:形如 int fun(int &x) 或者 int fun(const int &x)
C++之explicit C++中允许一种特殊的声明比变量的方式。在这种情况下,可以将一个对应于构造函数参数类型的数据直接赋值给类变量。编译器在编译时会自动进行类转换,将对应于构造函数参数类型的数据转换为类的对象。但是这种宽松的规则会破坏代码的可读性,并导致难以发现的错误。其实只要在构造函数前加上explicit则会禁止这种自动转换。要注意的是explicit只对构造函数起作用。 下面来举例说明。#inclu
Linux shell 脚本中变量的数学计算 首先从一个例子说起:x=1+1echo $x你是不是期待着输出2啊?让你失望了,这样输出的结果是1+1。为什么呢?这是因为在shell script中变量类型默认为“字符串”,所以若不指定变量类型,1+1是一个“字符串”而不是“计算式”。那么怎么得到我们想要的结果呢?方法很多,但是总结起来就是两种,一种就是生命变量的类型。另一种是对特定的计算式进行处理。1)首先看第一类方法: