原创 Java基礎知識_Java內存區域

java的內存區域大概可以分配爲堆,棧, 方法區, 程序計數器,直接內存 (1)程序計數器: 可以堪稱線程執行時用於指示當前所執行的字節碼的行號指示器。有點類似與寄存器中的PC寄存器 (2)棧分爲Java虛擬機棧和本地方法棧。java虛擬

原创 機器學習學習筆記1-簡單的線性迴歸

今天學習了關於利用Python的Scipy庫進行線性擬合的內容。主要使用了兩個函數 一個是polyfit用於將輸入的數據進行擬合,簡單的調用方式如下 fp = polyfit(x, y, 1) 其中x,y分別代表輸入的x軸數據和y軸數據,

原创 強化學習筆記(二)---- 策略迭代算法

強化學習有兩種常見迭代訓練算法:策略迭代算法和值迭代算法。本文中主要講述策略迭代算法。 先從一個簡答的問題開始,下圖爲一個四方格子,每個位置的狀態空間分別爲{1, 2, 3, 4}, 其中 3 的位置是個陷阱, 4的位置有個金幣。

原创 hihocoder播放列表

描述 小Hi的手機中存着N首他喜愛的歌曲。現在小Hi希望製作一個長度爲L的播放列表,滿足 每一首歌至少播放一編 同一首歌不能連續播放,之間至少間隔一首其他歌曲 請你計算一共有多少種不同的播放列表滿足條件?由於結果可能非常大

原创 戰艦日常任務hihocoder --優先級隊列使用技巧

描述 小Hi最近在玩一款遊戲。他在遊戲中一共建造了N艘戰艦。這N艘戰艦分屬6種不同的類別:航空母艦(CV)、驅逐艦(DD)、輕型巡洋艦(CL)、重型巡洋艦(CA)、戰列艦(BB)和戰列巡洋艦(BC)。此外每艘戰艦還有兩個屬性,一個是戰

原创 強化學習筆記(四)......基於時間差分的Sarsa強化學習方法

解決強化學習的訓練問題有很多種方法,本節用時間差分方法Sarsa來對一個簡單的迷宮問題進行求解。 迷宮問題的地圖簡單描述如下。 同策略的Sarsa方法更新動作值函數更新公式如下: 簡單的說明一下,就是通過概率模擬狀態s的時候,選擇

原创 強化學習筆記(五)......基於時間差分的Qlearning強化學習方法

解決強化學習的訓練問題有很多種方法,本節用時間差分方法Qlearning算法來對一個簡單的迷宮問題進行求解。 迷宮問題的地圖簡單描述如下。 異策略的Qlearning方法更新動作值函數更新公式如下: 簡單的說明一下,就是通過概率模擬狀

原创 hihocoder好的數字串

描述 給定一個數字字符串S,如果一個數字字符串(只包含0-9,可以有前導0)中出現且只出現1次S,我們就稱這個字符串是好的。 例如假設S=666,則1666、03660666是好的,6666、66、123不是好的;假設S=1212,則

原创 強化學習筆記(1)-找金幣小遊戲

使用gym實現的第一個強化學習的問題,簡單來說就是一個找金幣的問題。 該網格世界一共8個狀態,其中6和8是死亡區域,狀態7是金幣區域,機器人的初始位置爲網格中的任意一個狀態,機器人從初始狀態出發尋找金幣,機器人每探索一步,進入死亡區域或找

原创 道路建設java

這是一個有趣的題目,我們來詳細分析題目的解法 描述 H 國有 n 座城市和 n-1 條無向道路,保證每兩座城市都可以通過道路互相到達。現在 H 國要開始施工,施工分若干個階段,第 i 個階段會建設無向道路 (x,y) ,當且僅當存在一個數

原创 數字遊戲2

在做一道hihocoder上的題目的時候,開始的時候一時間沒有想出來這裏寫博客理一下思路。 題目內容: 小 Hi 有一個數字 k,小 Hi 可以對他進行多次變換:每次變換選擇 k 的一個大於 1 的約數 d,然後將 k 變成 k/d

原创 嵌入式UCOS系統的O(1)調度算法優化

經典算法的再優化 學習過嵌入式系統的人,應該大都學習過一個嵌入式操作系統UCOS,在這個系統中,有一個經典的O(1)複雜度的調度算法。該算法用於從就緒的任務中找到優先級最高的就緒任務,然後把執行的權利交給這個線程。關於該算法的細節有興趣的

原创 強化學習筆記(三)-----值迭代算法

強化學習有兩種常見迭代訓練算法:策略迭代算法和值迭代算法。在上一篇博客<<強化學習筆記(二)>>中已經詳細描述了策略迭代算法,其實值迭代算法和策略迭代算法的基本思想是一致的,其最大的區別在於,策略迭代算法在進行策略改善的時候,使用的每個狀

原创 已知多邊形的頂點座標(x,y),求多邊形的面積

package 計算多邊形的面積; public class 計算多邊形的面積 { public static void main(String[] args) { System.out.println(calc