摘要: 主要有两种实现方式:递归和非递归。 遍历方式主要有:前序遍历、中序遍历、后序遍历和层序遍历。 #前序遍历 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * 阅读全文
posted @ 2021-04-26 16:13 Xycdada 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 简单动态规划:dp[i]是以位置i结束的最大和,动态转移方程dp[i] = max(dp[i-1]+array[i], array[i]),dp中的最大值即是结果。 class Solution { public: int FindGreatestSumOfSubArray(vector<int> 阅读全文
posted @ 2020-11-16 19:45 Xycdada 阅读(45) 评论(0) 推荐(0) 编辑
摘要: #include<iostream> #include<string.h> using namespace std; int main() { string s; cin>>s; if(s.length() >1 && s[0] == '"' && s[s.length()-1] == '"' && 阅读全文
posted @ 2020-11-13 20:04 Xycdada 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 使用torch.nn.BCELoss()需要input >= 0. && input <= 1,但是我的网络最后没有加sigmoid,用nn.BCEWithLogitsLoss()替换torch.nn.BCELoss()即可。 阅读全文
posted @ 2020-11-12 20:22 Xycdada 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 1、单通道输出 在训练时,输出通道为1,网络的输出数值是任意的。标签是单通道的二值图,对输出使用sigmoid,使其数值归一化到[0,1],然后和标签做交叉熵损失。 训练结束后,将输出的output经过sigmoid函数,然后取阈值(一般为0.5),大于阈值则为1否则取0,从而得到最终的预测结果。 阅读全文
posted @ 2020-11-11 21:14 Xycdada 阅读(1441) 评论(0) 推荐(0) 编辑
摘要: 题解:递归求左右子树的最大深度。 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { 阅读全文
posted @ 2020-11-04 21:54 Xycdada 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 直接遍历,将当前字符加到每一个已有的子集中形成新的子集,直到遍历完成即可得到所有的子集。 class Solution { public List<List<Integer>> subsets(int[] nums) { List<List<Integer>> res = new ArrayList 阅读全文
posted @ 2020-11-04 17:21 Xycdada 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 因为在使用Crossentropyloss作为损失函数时,output=net(input)的output应该是[batchsize, channel, height, weight],而label则是[batchsize, height, weight],label是单通道灰度图,而在BCELos 阅读全文
posted @ 2020-10-16 16:58 Xycdada 阅读(2156) 评论(0) 推荐(0) 编辑
摘要: if __name__ == '__main__': #code 将代码放在main函数中运行 阅读全文
posted @ 2020-10-12 20:02 Xycdada 阅读(702) 评论(0) 推荐(0) 编辑
摘要: import numpy as np import torch data = np.array([1,2,3]) type(data) d1 = torch.Tensor(data) #d1和data不共享,互相独立,数据类型会默认为float64 print(d1) d2 = torch.tens 阅读全文
posted @ 2020-10-09 16:43 Xycdada 阅读(765) 评论(0) 推荐(0) 编辑