<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Hello World]]></title><description><![CDATA[不为繁华易匠心]]></description><link>https://blog.youkuaiyun.com/whd526</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; whd526]]></copyright><item><title><![CDATA[linux安装MYSQL遇到的问题]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/78218801</link><guid>https://blog.youkuaiyun.com/whd526/article/details/78218801</guid><author>whd526</author><pubDate>Thu, 12 Oct 2017 19:39:08 +0800</pubDate><description><![CDATA[####启动MYSQL服务时出现无法创建/var/log/mariadb/mariadb.log 
错误信息： 
Starting MySQL.touch: cannot touch ‘/var/log/mariadb/mariadb.log‘: No such file or directory 
chmod: cannot access ‘/var/log/mariadb/mariadb.log]]></description><category></category></item><item><title><![CDATA[如何阻止表单的默认提交事件]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/78178451</link><guid>https://blog.youkuaiyun.com/whd526/article/details/78178451</guid><author>whd526</author><pubDate>Sun, 08 Oct 2017 23:15:42 +0800</pubDate><description><![CDATA[表单一点击提交按钮(submit)必然跳转页面，如果表单的action为空也会跳转到自己的页面，即效果为刷新当前页。 
如下，可以看到一点击提交按钮，浏览器的刷新按钮闪了一下：如果想要阻止表单的默认提交事件，有以下几种方法：1.将<input>标签内按钮类型从type="submit"修改为type="button"2.表单内的<button>未指定类型时，默认的类型为submit，可以显式的修改为]]></description><category></category></item><item><title><![CDATA[bootstrap开发中遇到的问题]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/78177957</link><guid>https://blog.youkuaiyun.com/whd526/article/details/78177957</guid><author>whd526</author><pubDate>Sun, 08 Oct 2017 22:02:07 +0800</pubDate><description><![CDATA[导航条缩小到XS模式上下留白的情况做了一固定在底部的导航内嵌表单，但是缩小到xs宽度时出现了上下两条白条。 
原因也很简单，在缩小到xs宽度时出现了折叠的情况，bootstrap将内嵌的form视为独立整体的一行。 
我采用了解决方法： 
1.将form的一个class属性：navbar-form改为form-inline 
 
2.再为form添加padding样式style="padding-t]]></description><category></category></item><item><title><![CDATA[浅谈JSONP]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/78176368</link><guid>https://blog.youkuaiyun.com/whd526/article/details/78176368</guid><author>whd526</author><pubDate>Sun, 08 Oct 2017 18:23:55 +0800</pubDate><description><![CDATA[网上通篇大论JSONP，说的无非都是JSONP可以解决跨域数据访问的问题 
那么我们一般访问数据都是通过AJAX，但是AJAX跨域请求需要被请求方通设置Access-Control-Allow-Origin来实现跨域访问。否则AJAX一般不允许跨域请求。 
由于AJAX的核心是XMLHttpRequest。我上一篇博文也讲过如何不通过XMLHttpRequest来模仿AJAX。 
总共有三种方法：]]></description><category></category></item><item><title><![CDATA[不用XMLHttpRequest来模仿AJAX]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/78158405</link><guid>https://blog.youkuaiyun.com/whd526/article/details/78158405</guid><author>whd526</author><pubDate>Wed, 04 Oct 2017 16:02:05 +0800</pubDate><description><![CDATA[AJAX的原理就是通过XMLHttpRequest对象来对服务端发起请求。所以XMLHttpRequest对象是AJAX的核心。 
现在我想不通过XMLHttpRequest对象来对服务端发起请求，但不刷新页面。 
例：创建一个投票按钮，点击后将请求服务器数据库对数据加一。 
前端投票按钮test.html：<!DOCTYPE html>
<html lang="en">
<head>
    <m]]></description><category></category></item><item><title><![CDATA[MyISAM和InnoDB的索引实现]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/78003466</link><guid>https://blog.youkuaiyun.com/whd526/article/details/78003466</guid><author>whd526</author><pubDate>Sat, 16 Sep 2017 14:31:21 +0800</pubDate><description><![CDATA[在 MySQL 中，主要有四种类型的索引，分别为： B-Tree 索引， Hash 索引， Fulltext 索引和 R-Tree 索引。我们主要分析B-Tree 索引。B-Tree 索引是 MySQL 数据库中使用最为频繁的索引类型，除了 Archive 存储引擎之外的其他所有的存储引擎都支持 B-Tree 索引。Archive 引擎直到 MySQL 5.1 才支持索引，而且只支持索引单个 AUT]]></description><category></category></item><item><title><![CDATA[strtolower()和strtoupper()中文乱码问题]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/77871433</link><guid>https://blog.youkuaiyun.com/whd526/article/details/77871433</guid><author>whd526</author><pubDate>Wed, 06 Sep 2017 21:04:01 +0800</pubDate><description><![CDATA[这个问题来自腾讯的一道笔试题： 
PHP的strtolower()和strtoupper()函数在安装非中文系统的服务器下可能会导致将汉字转换为乱码，请写两个替代的函数实现兼容Unicode文字的字符串大小写转换。原因是：中文是由多字节组成的，而只有英文系统的单个英文字符只有一个字节，所以该系统把中文的每一个字节都做了strtolower()处理,改变后的中文字节拼接在一起就成了乱码（新生成的编码映]]></description><category></category></item><item><title><![CDATA[背包问题模板]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/77824827</link><guid>https://blog.youkuaiyun.com/whd526/article/details/77824827</guid><author>whd526</author><pubDate>Sun, 03 Sep 2017 19:42:24 +0800</pubDate><description><![CDATA[01背包特点：每种物品只有一件子问题定义状态
  bag[i][v] : 前i件物品放到一个容量为v的背包中可以获得最大价值
转移状态方程
  bag[i][v] = max(bag[i-1][v],bag[i-1][v-weight[i]] + value[i])
模板：#include<iostream>
#include<string.h>
using namespace std;
int m]]></description><category></category></item><item><title><![CDATA[BST二叉搜索树]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/77778862</link><guid>https://blog.youkuaiyun.com/whd526/article/details/77778862</guid><author>whd526</author><pubDate>Fri, 01 Sep 2017 22:24:53 +0800</pubDate><description><![CDATA[BST的查找算法//递归查找
struct node *Find(ElementType key,struct node *BST){
    if(!BST)
        return NULL;//查找失败
    if(key > BST->data){
        return Find(key,BST->right);
    }else if(key < BST->data){]]></description><category></category></item><item><title><![CDATA[构造回文]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/75449103</link><guid>https://blog.youkuaiyun.com/whd526/article/details/75449103</guid><author>whd526</author><pubDate>Wed, 19 Jul 2017 20:29:54 +0800</pubDate><description><![CDATA[给定一个字符串s，你可以从中删除一些字符，使得剩下的串是一个回文串。如何删除才能使得回文串最长呢？ 
输出需要删除的字符个数。输入描述:输入数据有多组，每组包含一个字符串s，且保证:1<=s.length<=1000.输出描述:对于每组数据，输出一个整数，代表最少需要删除的字符个数。输入例子1: 
abcda 
google输出例子1: 
2 
2#include <iostream>
#inclu]]></description><category></category></item><item><title><![CDATA[最长公共子序列与最长公共子串--动态规划]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/75449074</link><guid>https://blog.youkuaiyun.com/whd526/article/details/75449074</guid><author>whd526</author><pubDate>Wed, 19 Jul 2017 20:26:35 +0800</pubDate><description><![CDATA[最长公共子串（Longest Common Substirng）和最长公共子序列（Longest Common Subsequence，LCS）的区别为：子串是串的一个连续的部分，子序列则是从不改变序列的顺序，而从序列中去掉任意的元素而获得新的序列；也就是说，子串中字符的位置必须是连续的，子序列则可以不必连续。最长公共子序列问题:对于母串X=<x1,x2,⋯,xm>,Y=<y1,y2,⋯,yn>，求]]></description><category></category></item><item><title><![CDATA[Referer与防盗链]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/75103316</link><guid>https://blog.youkuaiyun.com/whd526/article/details/75103316</guid><author>whd526</author><pubDate>Fri, 14 Jul 2017 11:36:25 +0800</pubDate><description><![CDATA[Referer:HTTP请求头信息中的Referer可以判断访问的本站资源是来自哪里的。因此，我们可以利用Referer来避免别人盗取自己本站的资源，如图片。如Apache可以编写.htaccess文件来重写访问的资源连接RewriteEngine On
#Rewrite Base /dir #只在dir目录下生效
RewriteCond %{REQUEST_FILENAME} .*\.(jpg|j]]></description><category></category></item><item><title><![CDATA[Apache No installed service named "Apache2.4"的解决办法]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/75093459</link><guid>https://blog.youkuaiyun.com/whd526/article/details/75093459</guid><author>whd526</author><pubDate>Thu, 13 Jul 2017 22:11:08 +0800</pubDate><description><![CDATA[windows安装Apache后，用cmd开启apache服务时，提示No installed service named "Apache2.4" 
解决步骤： 
1.cmd窗口，进入Apache2的bin目录(比如我的bin路径为E:\Apache24\bin)。 
2. 运行httpd.exe -k install -n "Apache2.4" 安装Apache到Windows服务中。 
（记得]]></description><category></category></item><item><title><![CDATA[使用scoket发送HTTP请求]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/75070920</link><guid>https://blog.youkuaiyun.com/whd526/article/details/75070920</guid><author>whd526</author><pubDate>Thu, 13 Jul 2017 15:45:39 +0800</pubDate><description><![CDATA[建议先看一下如何用telnet发送HTTP请求： 
http://blog.youkuaiyun.com/whd526/article/details/75042691<?php
class Http{    const CRLF = "\r\n";
    protected $errno = -1;
    protected $errstr = '';
    protected $url = null;]]></description><category></category></item><item><title><![CDATA[HTTP协议]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/75042691</link><guid>https://blog.youkuaiyun.com/whd526/article/details/75042691</guid><author>whd526</author><pubDate>Thu, 13 Jul 2017 00:54:36 +0800</pubDate><description><![CDATA[Http(HyperText Transfer Protocol)，叫做超文本传输协议，它属于应用层协议，是基于Tcp连接的。它是一种基于请求/响应模式的，无状态的协议。 
 http1.0的特点：一次连接一次响应后就断开； 
 http1.1的特点：持续连接，在一次连接中可发送多个请求，不必等待每次请求的响应是否到来。一般用浏览器来发送http协议，但是也可用别的工具来发送http协议。如teln]]></description><category></category></item><item><title><![CDATA[Ajax提交表单数据]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/72615070</link><guid>https://blog.youkuaiyun.com/whd526/article/details/72615070</guid><author>whd526</author><pubDate>Sun, 21 May 2017 22:03:48 +0800</pubDate><description><![CDATA[ajax的基本语法$.ajax({
    type: "post",  //数据提交方式（post/get）
    url: "demo.php",  //提交到的url
    data: {"key1":"value1","key2":"value2"},//提交的数据
    dataType: "json",//返回的数据类型格式
    success: function(msg){]]></description><category></category></item><item><title><![CDATA[堆以及php实现堆排序]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/71668278</link><guid>https://blog.youkuaiyun.com/whd526/article/details/71668278</guid><author>whd526</author><pubDate>Thu, 11 May 2017 18:49:29 +0800</pubDate><description><![CDATA[什么是堆 
这里的堆(二叉堆),指得不是堆栈的那个堆,而是一种数据结构。堆可以视为一棵完全的二叉树,完全二叉树的一个“优秀”的性质是,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示,每一个结点对应数组中的一个元素.数组与堆之间的关系 
 
二叉堆一般分为两种：最大堆和最小堆。什么是最大堆堆中每个父节点的元素值都大于等于其孩子结点（如果存在）,这样的堆就是一个最大堆因此,最大堆中的最大元素]]></description><category></category></item><item><title><![CDATA[先序创建二叉树及三种遍历]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/71637373</link><guid>https://blog.youkuaiyun.com/whd526/article/details/71637373</guid><author>whd526</author><pubDate>Thu, 11 May 2017 16:01:28 +0800</pubDate><description><![CDATA[#include<stdio.h>
#include<stdlib.h>
int max = 0;
struct node{
    int data;
    struct node *left;
    struct node *right;
};struct node *create(struct node *newNode){//先序创建二叉树 
    char data;
    sca]]></description><category></category></item><item><title><![CDATA[插入排序]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/71617413</link><guid>https://blog.youkuaiyun.com/whd526/article/details/71617413</guid><author>whd526</author><pubDate>Thu, 11 May 2017 12:57:44 +0800</pubDate><description><![CDATA[插入排序就像扑克排序，从未排序的序列选第一张牌，插入到已排序的牌堆里的合适位置。function insert(&$arr){
    for($i = 1; $i < count($arr); $i++){//认为第一个位置是已排序序列，从第二个开始逐一选择插入
        if($arr[$i] < $arr[$i-1]){
            $temp = $arr[$i];]]></description><category></category></item><item><title><![CDATA[php实现冒泡排序]]></title><link>https://blog.youkuaiyun.com/whd526/article/details/71616741</link><guid>https://blog.youkuaiyun.com/whd526/article/details/71616741</guid><author>whd526</author><pubDate>Thu, 11 May 2017 12:32:05 +0800</pubDate><description><![CDATA[冒泡排序很简单，就是不断地交换相邻的数，使得最大的数排在最后面，即一次循环可以确定最大一个数的排序位置。 
php代码实现：function bubble(&$arr){
    for($i = 1; $i < count($arr); $i++){//第n次循环可以确定后n个的位置
        for($j = 0; $j < count($arr)-$i; $j++){//确定的位置就不用]]></description><category></category></item></channel></rss>