原创 排序算法05------------------------堆排序(圖解)

1.堆排序   堆排序是用堆這種數據結構所設計的一種排序算法,近似一顆完成二叉樹,同時具有一個特性,父節點的值大於(小於)子節點的值。 堆分兩種,父節點比子節點大的叫最大堆,父節點比子節點小的叫最小堆 下面就是一個最大堆    2.堆排序

原创 排序算法04之------------------------歸併排序

1.歸併排序   歸併排序採用的思想是分而治之,簡單來說,就是將一個待排序的序列,不斷劃分,最終得到有序的序列(只剩一個元素的序列就是有序序列),然後將這些有序的序列進行合併,第一次合併將只有一個元素序列的有序子序列進行合併,就會得到有兩個

原创 小遊戲二之---------------五子棋

1.五子棋是一比較容易寫的小遊戲,很適合用來練手,作爲練手,不必弄太複雜,所以就不弄電腦AI了,只是玩家之間的對戰(AI下次再寫)。 2.五子棋的難點在於如何判斷輸贏,其實很簡單。每次下棋,就判斷該棋子的四個方向,橫豎方向,還有兩個對角線(

原创 排序算法02----------------選擇排序

1.選擇排序:首先在未排序序列中找到最小或最大元素,存放到排序序列的起始位置,再從剩餘未排序元素中繼續尋找最小或最大元素,然後放到已排序序列的末尾。重複第二步,直到所有元素均排序完畢 2.選擇排序和冒泡排序原理差不多,都是相鄰兩個元素進行比

原创 排序算法01------------------------------------冒泡排序

1.排序算法在編程中必不可少,也很常用,是必須要學的。 2.就我本人看來,最適合練習各種算法的語言非C語言不可。C語言本身語法簡單直接明瞭,沒有太多的封裝,很適合描述算法的各步驟。 一 .冒泡排序   1)冒泡排序在排序算法中比較常見,也很

原创 小遊戲一之---------貪食蛇教程

1.個人認爲,學編程最重要的是多動手寫代碼,只有你真正去寫,你才能發現自己的問題所在,發現並改正,你的能力就能得到提升。對於大多數人而言,你踏踏實實把所學到的知識理解並運用好,你就能成爲一個不錯的程序員。 2.寫一些小遊戲用於練習是一個很不

原创 C語言指針一些常見的錯誤用法

指針用的好猶如神助,用不好會讓你叫苦連連,但大多數人是用不好指針的,所以後來的很多語言都把指針封裝,屏蔽。比如JAVA,java是沒有指針的,但是很多地方都用到指針,不過不對用戶開放,語言的自身機制幫用戶處理指針的分配釋放,爲的就是方便用戶

原创 C語言指針的一些用法

指針是C語言的靈魂,精華之所在。指針強大而危險,用得好是一大利器,用得不好是一大潛在危害。正是指針具有強大而又危險的特性,加上指針比較難,很多人用的不好,所以越是封裝程度高的語言,越是沒有指針的"存在"。比如JAVA,Python,就是把指

原创 python網課自動刷課程序-------selenium+chromedriver

python的強大之處就在於有許多已經寫好的功能庫提供,這些庫強大且易用,對於寫一些有特定功能的小程序十分方便。 現在就用pyhton的selenium+谷歌遊覽器寫一個可以自動刷課的程序,以智慧樹上的網課爲例。 原理說明:selenium

原创 MySql數據庫的一些基本操作---------------SQL語法

MySql數據庫是比較常用的關係型數據庫,操作用的是sql語句,下面來說一說MySql的一些基本操作 MySql數據庫是一種C/S型的模式,即客戶端/服務器端,對應到具體應用上,便是bin目錄下的mysql.exe和mysqld.exe,m

原创 一些適合初學者的C/C++語言開發環境(IDE)

對於很多初學C語言的人來說,第一個開發環境應該都是VC6.0(沒辦法的事,很多高校都用VC6),在以前VC6確實是比較適合用來進行C/C++的學習。 但現在VC6已經不適合當前的環境了,更不適合新手。我之前使用過VC6(網上流行的版本)一段