triangle

List的使用

回眸只為那壹抹淺笑 提交于 2019-12-17 05:14:10
1.删除第一个字符串当中出现的第二个字符串中的字符。 例如: String str1 = "welcome to bit"; String str2 = "come"; 输出结果:wl t bit public static List<Character> func(String str1,String str2) { List<Character> ret = new ArrayList<>(); for (int i = 0; i < str1.length(); i++) { char ch = str1.charAt(i); if(!str2.contains(ch+"")){ ret.add(ch); } } return ret; } 2.杨辉三角 //numRows:你的行数 public static List<List<Integer>> generate(int numRows) { List<List<Integer>> triangle = new ArrayList<>(); if(numRows == 0) { return triangle; } triangle.add(new ArrayList<>());//0 triangle.get(0).add(1); //行数 for (int i = 1; i < numRows; i++) {

初中|数学题目整理

ⅰ亾dé卋堺 提交于 2019-12-16 10:44:23
前言 典例剖析 在初中阶段,常用的非负式子有二次式,二次根式,绝对值式;其实也就是分别考查 \(y=x^2\geqslant 0\) , \(y=\sqrt{x}\geqslant 0\) , \(y=|x|\geqslant 0\) 的非负性的应用, 案例1 已知 \((x+y-3)^2+3|x-y-1|=0\) ,求 \(2x+y\) 的值; 分析:由于 \((x+y-3)^2+3|x-y-1|=0\) , 且 \((x+y-3)^2\geqslant 0\) , \(3|x-y-1|\geqslant 0\) , 则须满足条件 \(\left\{\begin{array}{l}{x+y-3=0}\\{x-y-1=0}\end{array}\right.\) , 从而求得 \(x=2\) , \(y=1\) ,则 \(2x+y=5\) ; 引申1 已知 \((x+y-3)^2+3(x-y-1)^2=0\) ,求 \(2x+y\) 的值; 引申2 已知 \(|x+y-3|+3|x-y-1|=0\) ,求 \(2x+y\) 的值; 引申3 已知 \((x+y-3)^2+\sqrt{x-y-1}=0\) ,求 \(2x+y\) 的值; 引申4 已知 \(\sqrt{x+y-3}+\sqrt{x-y-1}=0\) ,求 \(2x+y\) 的值; 引申5 已知 \(\sqrt{x+y-3

120. Triangle

你说的曾经没有我的故事 提交于 2019-12-07 15:10:35
题目思路 健身回来再写 哈哈 反正没人看我的博客 代码: class Solution { public: int minimumTotal(vector<vector<int>>& triangle) { int row = triangle.size(); int col = triangle[row - 1].size(); vector<vector<int>> dp(row,vector<int>(col)); for (int i = 0; i < col; ++i) { dp[row - 1][i] = triangle[row - 1][i]; } for (int i = row - 2; i >= 0; i--) { for (int j = 0; j < triangle[i].size(); j++) { dp[i][j] = std::min(dp[i + 1][j], dp[i + 1][j + 1]) + triangle[i][j]; } } return dp[0][0]; } }; 参考资料 1 https://www.cnblogs.com/mozi-song/p/9626067.html 《120. Triangle》 2 https://leetcode.com/problems/triangle/discuss/38730/DP

Symbol

会有一股神秘感。 提交于 2019-12-06 20:06:22
文章编写参考 阮一峰 《ECMAScript 6 入门》 1. 概述 ES5中一个对象额属性名都是字符串,这很容易造成属性名冲突;比如你在使用别人提供的对象,当你向该对象中添加新的属性的时候就要特别小心,谨防属性重名造成冲突。如果有一种机制,保证每个属性的名称都是独一无二的,那么就不用担心这个问题了。也就是是ES6引入Symbol的原因。 【Symbol是一种数据类型】,表示独一无二的值! Symbol值是通过Symbol( )函数生成的,也就是说从现在起,对象的属性名称不只是字符串了,多了一种Symbol值,并且保证是独一无二的。 let s = Symbol(); typeof s; //symbol 上面的代码调用Symbol()函数生成了一个独一无二的Symbol值,typeof的执行结果告诉了我们symbol是一种数据类型。 let s1 = Symbol( 'Blue' ); let s2 = Symbol( 'Crazy' ); console. log (s1); //Symbol(Blue) console. log (s2); //Symbol(Crazy) 上面代码中我们为Symbol传入了一个字符串参数,表示对Symbol值得描述,主要目的是为了区分各自是哪个Symbol值。 【如果Symbol的参数是一个对象,就会调用该对象的toString方法

Basic Lighting_练习二

帅比萌擦擦* 提交于 2019-12-06 04:43:53
尝试实现一个Gouraud着色(而不是冯氏着色)。如果你做对了话,立方体的光照应该会看起来有些奇怪,尝试推理为什么它会看起来这么奇怪 1 // Vertex shader: 2 // ================ 3 #version 330 core 4 layout (location = 0) in vec3 aPos; 5 layout (location = 1) in vec3 aNormal; 6 7 out vec3 LightingColor; // resulting color from lighting calculations 8 9 uniform vec3 lightPos; 10 uniform vec3 viewPos; 11 uniform vec3 lightColor; 12 13 uniform mat4 model; 14 uniform mat4 view; 15 uniform mat4 projection; 16 17 void main() 18 { 19 gl_Position = projection * view * model * vec4(aPos, 1.0); 20 21 // gouraud shading 22 // ------------------------ 23 vec3 Position =

Hello Triangle_练习二:创建相同的两个三角形,但对它们的数据使用不同的VAO和VBO

混江龙づ霸主 提交于 2019-12-05 17:45:29
2019/11/26 1 #include <glad/glad.h> 2 #include <GLFW/glfw3.h> 3 4 #include <iostream> 5 6 void framebuffer_size_callback(GLFWwindow* window, int width, int height); 7 void processInput(GLFWwindow *window); 8 9 // settings 10 const unsigned int SCR_WIDTH = 800; 11 const unsigned int SCR_HEIGHT = 600; 12 13 const char *vertexShaderSource = "#version 330 core\n" 14 "layout (location = 0) in vec3 aPos;\n" 15 "void main()\n" 16 "{\n" 17 " gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);\n" 18 "}\0"; 19 const char *fragmentShaderSource = "#version 330 core\n" 20 "out vec4 FragColor;\n" 21 "void main

Hello Triangle_练习三:创建两个着色器程序,第二个程序使用一个不同的片段着色器,输出黄色;再次绘制这两个三角形,让其中一个输出为黄色

陌路散爱 提交于 2019-12-05 17:45:16
2019/11/26 1 #include <glad/glad.h> 2 #include <GLFW/glfw3.h> 3 #include <iostream> 4 5 void framebuffer_size_callback(GLFWwindow* window, int width, int height) 6 { 7 glViewport(0, 0, width, height); 8 } 9 void processInput(GLFWwindow *window) 10 { 11 if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS) 12 glfwSetWindowShouldClose(window, true); 13 } 14 const char *vertexShaderSource = "#version 330 core\n" 15 "layout (location = 0) in vec3 aPos;\n" 16 "void main()\n" 17 "{\n" 18 " gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);\n" 19 "}\0"; 20 const char *fragmentShaderSource1 = "#version

Hello Triangle_练习一:添加更多顶点到数据中,使用glDrawArrays,尝试绘制两个彼此相连的三角形

那年仲夏 提交于 2019-12-05 17:44:19
2019/11/26 1 #include <glad/glad.h> 2 #include <GLFW/glfw3.h> 3 4 #include <iostream> 5 6 void framebuffer_size_callback(GLFWwindow* window, int width, int height); 7 void processInput(GLFWwindow *window); 8 9 // settings 10 const unsigned int SCR_WIDTH = 800; 11 const unsigned int SCR_HEIGHT = 600; 12 13 const char *vertexShaderSource = "#version 330 core\n" 14 "layout (location = 0) in vec3 aPos;\n" 15 "void main()\n" 16 "{\n" 17 " gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);\n" 18 "}\0"; 19 const char *fragmentShaderSource = "#version 330 core\n" 20 "out vec4 FragColor;\n" 21 "void main

<Dynamic Programming> 120 279

谁都会走 提交于 2019-12-05 07:37:54
120. Triangle 从倒数第二行找,然后逐个遍历这个DP数组,对于每个数字,和它之后的元素比较选择较小的再加上面一行相邻位置的元素做为新的元素,然后一层一层的向上扫描 class Solution { public int minimumTotal(List<List<Integer>> triangle) { if(triangle.size() == 0 || triangle == null) return 0; int rows = triangle.size(); int[] dp = new int[rows + 1]; for(int i = rows - 1; i >= 0 ; i--){ for(int j = 0; j <= i; j++){ dp[j] = Math.min(dp[j], dp[j + 1]) + triangle.get(i).get(j); } } return dp[0]; } } 279. Perfect Squares class Solution { public int numSquares(int n) { int[] dp = new int[n + 1]; Arrays.fill(dp, Integer.MAX_VALUE); dp[0] = 0; for(int i = 1; i <= n; i++){ for