算法設計與應用基礎作業
文章平均质量分 62
louiewu
这个作者很懒,什么都没留下…
展开
-
Binary Tree Paths
本次的題目要求尋找樹根到葉子的所有路徑,並以string的方式輸出。基本思想上我所採用深度優先搜索算法(DP)解決樹的問題。Given a binary tree, return all root-to-leaf paths.For example, given the following binary tree: 1 / \2 3 \ 5原创 2017-06-18 23:00:20 · 177 阅读 · 0 评论 -
Longest Palindromic Subsequence
本次題目是有關於動態規劃的練習,Longest Palindromic Subsequence,目的是找出在給定的字串中最長的回蚊子字串的長度。Given a string s, find the longest palindromic subsequence's length in s. You may assume that the maximum length of s is 1000.原创 2017-05-21 20:28:36 · 183 阅读 · 0 评论 -
Partition Equal Subset Sum
本次題目也是關於動態規劃的練習,Partition Equal Subset Sum,題目要求如下:Given a non-empty array containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements i原创 2017-06-04 21:03:33 · 177 阅读 · 0 评论 -
Target Sum
本週選做的題目也是關於動態規劃的應用,Target Sum,題目要求如下:You are given a list of non-negative integers, a1, a2, ..., an, and a target, S. Now you have 2 symbols + and -. For each integer, you should choose one fr原创 2017-05-28 21:22:42 · 188 阅读 · 0 评论 -
Friend Circles
本此的題目是關於深度優先算法(DFS)的應用,Friend Circles,題目如下:There are N students in a class. Some of them are friends, while some are not. Their friendship is transitive in nature. For example, if A is a direct原创 2017-05-07 17:21:02 · 237 阅读 · 0 评论 -
Continuous Subarray Sum
本次題目是有關於動態規劃的應用,Continuous Subarray Sum,題目的大致要求如下:Given a list of non-negative numbers and a target integer k, write a function to check if the array has a continuous subarray of size at least 2原创 2017-05-15 09:52:06 · 215 阅读 · 0 评论 -
Is Subsequence
本次的主題是關於檢測 subsequence,初始給出字串S與T,目的是要檢測在T中S是否存在在其中。Given a string s and a string t, check if s is subsequence of t.You may assume that there is only lower case English letters in both s and原创 2017-04-23 19:12:55 · 139 阅读 · 0 评论 -
Assign Cookies
本次選作的主題是有關利用貪心算法(greedy sort)概念,Assign Cookies,題目的大致要求如下:Assume you are an awesome parent and want to give your children some cookies. But, you should give each child at most one cookie. Eac原创 2017-04-17 00:22:58 · 175 阅读 · 0 评论 -
Course Schedule
其實這道題目要求看似有難度,但反覆思考題目後會發現其實根本上只是利用深度搜索(DFS)以及拓譜排序尋找是否有環的出現以及主要在網上搜尋關於DFS檢測環的算法並參考,背景是關於課程的先後順序,譬如說在上高級編成之前要有C++的基礎等等,如果有出現則返回錯誤。There are a total of n courses you have to take, labeled from 0 to原创 2017-03-26 22:59:18 · 170 阅读 · 0 评论 -
Minimum Height Trees
本此選做的題目是有關於圖與樹的應用Minimum Height Trees,大致的要求如下The graph contains n nodes which are labeled from 0 to n - 1. You will be given the number n and a list of undirected edges (each edge is a pair原创 2017-04-09 11:36:25 · 124 阅读 · 0 评论 -
Merge k Sorted Lists
本此的主題主要違歸併排序的應用Merge k Sorted Lists並且透過鏈表實現,首先我們先設置各個節點的模塊:Definition for singly-linked list.struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {}};原创 2017-03-12 17:25:50 · 200 阅读 · 0 评论 -
Find Largest Value in Each Tree Row
本次的主題是希望圖形、樹以及鏈表深度搜索(DFS)的結合可以簡單搜索樹中每一行最大的數,並把它存儲在新創建的vector內,首先我們先給出樹的簡單結構://Definition for a binary tree node.struct TreeNode { int val; TreeNode *left; TreeNode *right; Tr原创 2017-03-19 19:57:13 · 172 阅读 · 0 评论 -
Kth Largest Element in an Array
本次選做題目為:Kth Largest Element in an Array,題目要求為給定一段有序或無序的鏈表並用分而治制的方法求出鏈表中第二大的內容。For example,Given [3,2,1,5,6,4] and k = 2, return 5.在構思這道題目的時候,首先採用對鏈表進行排序,我所採用排序方法為快速排序,在求出有序鏈表中第二大的項目。下面代碼原创 2017-03-05 16:52:32 · 169 阅读 · 0 评论 -
odd even linked list
本次所選做的題目: odd even linked list,題目的要求為給定一鍛鏈表,根據鏈表中各個節點中數字的奇偶做分類,奇數在前偶數在後形成一個新的鏈表,並且完成的時間複雜度在O(n)。Example:Given 1->2->3->4->5->NULL,return 1->3->5->2->4->NULL.關於奇偶數鏈表分類的函數為ListNode oddeven原创 2017-02-26 21:58:53 · 152 阅读 · 0 评论 -
期末NP完全問題
本次是關於算法課程期末NP完全問題的證明,首先題目: In the HITTING SET problem,we are given a family of sets{s1,s2,.......,sn}and a budget b,and we wish to find a set H of size 大致的要求是給定一組集合{s1, s2, s3,......,原创 2017-07-08 14:59:40 · 177 阅读 · 0 评论