原创 error C1189以及warning MSB8012

今天在將一個VS2003的工程轉化爲VS2010的時候,出了一些問題。 首先是: fatal error C1189: #error :  This file requires _WIN32_WINNT to be #defined at

原创 scanf,printf函數細節

今天筆試的時候遇到一個考察C語言scanf函數的題目int x; float y; scanf("%3d%f",&x,&y); // input 1

原创 HLSL的基礎語法

HLSL的基本語法 1 數據類型 1.1   標量類型 1. bool: True or false .Note that the HLSL provides the true and false keywordslike in C++.

原创 D3D頂點混合時FVF的一些問題以及對微軟的一些批評

在使用固定管道的頂點混合時候,會出現種種問題,比如:在指定D3DFVF_XYZBn的時候,權重是寫n個還是n-1個,矩陣的索引該怎麼設置才正確,DWORD類型的索引值應該跟在誰後面,還有D3DFVF_LASTBETA_UBYTE4這個FV

原创 中綴表達式轉後綴表達式

中綴表達式轉後綴表達式 1 基本概念          在計算機中表達式有三種,前綴表達式(波蘭式),中綴表達式,後綴表達式(逆波蘭式)。 如表達式:a+b*(c-d)-e/f 前綴表達式:-+a*b-cd/ef 中綴表達式:a+b*(c

原创 鏈表翻轉

要求用儘可能快的方式實現鏈表的翻轉操作。 這個我們需要用兩個指針,一個指向當前的節點,一個指向當前節點的前一個節點,每一次使當前節點的指向前一個節點來實現兩個節點之間的翻轉,然後順次再移動實現循環。 代碼也很簡單,如下所示: #incl

原创 美團面試題:尋找數組置尾操作的最小值

題目: 一個遞增的整形數組,現在的操作是每次從數組的開頭取出一個元素放在數組的末尾,連續n次這樣的操作後得到一個新的數組, 現在把這個數組給你,請求

原创 C++模板實現的AVL樹

1 AVL樹的定義 AVL樹是一種自平衡二叉排序樹,它的特點是任何一個節點的左子樹高度和右子樹的高度差在-1,0,1三者之間。AVL樹的任何一個子樹都是AVL樹。 2 AVL樹的實現 AVL樹本質是一種二叉排序樹,所以二叉排序樹的任何性質

原创 去哪兒網的一道面試題:找出字符串出現最多的字符

問題: 給定一個字符串,要求把字符串中出現次數最多的字符打印出來。 分析: 不置可否,肯定要統計每個字符出現的次數,然後根據字符出現次數的大小打印出出現次數最多的字符,另外需要注意的是出現次數最多的字符個數可能不止一個。 解決方案: 1

原创 字符串中刪除指定的字符

給定一個字符串如:“what a fuck day it is!”,現在要把從中刪除“wai”字符中包含的3個字符。 解決: 判定一個字符是否屬於待刪除的字符,這裏可以用到哈希表,所以可以做到查找的時間複雜度是O(n),我們可以使用兩個指

原创 鏈表的倒序輸出

鏈表的倒序輸出,我們可能想到的方法就是把鏈表翻轉後然後再遍歷一遍,這樣的話時間複雜度是O(n),但是缺點是代碼稍微複雜。或者是開闢一個數組,順序遍歷一個鏈表把元素複製到數組裏面,最後再把數組倒序輸出。其實這道題目時間複雜度都不可能低於O(

原创 mysql忘記密碼

有時候突然忘記MySQL的密碼會真的不爽,這裏介紹一種MySQL密碼忘記時重置密碼的方法,操作系統win8,MySql version:5.6.10 1 在任務管理器裏面關閉掉mysql.exe,mysqld.exe進程; 2 在MySQ

原创 Direct3D中繪製圖元的兩種方式

DirectX 中繪製圖元有兩種類型的函數,一個是DrawPrimitiveUp,一個是DrawPrimitive,當然跟索引相關的也有兩個類似的函

原创 約瑟夫問題的解法集錦

約瑟夫問題的N種解法 1 問題的歷史以及不同的版本 1.1           約瑟夫環(Josephus)問題是由古羅馬的史學家約瑟夫(Josephus)提出的,他參加並記錄了公元66—70年猶太人反抗羅馬的起義。約瑟夫作爲一個將軍,

原创 二叉樹的層次遍歷

問題: 如何實現二叉樹的層次遍歷? 解析: 我們可以使用隊列來解決這個問題 <1>將根節點壓入隊列 <2>判斷隊列是否爲空 <3>不爲空則獲取隊列最前端的元素,打印出該元素 <4>將該元素移除隊列 <5>如果該元素有左孩子,則將其左孩子進