kindring 10 місяців тому
батько
коміт
a3f295f6f7

+ 40 - 0
js/dom抽奖排列.js

@@ -0,0 +1,40 @@
+// 生成数组, 从大到小顺时针螺旋
+function generateSpiralArray(rows, cols) {
+    let arr = Array.from({ length: rows }, () => Array.from({ length: cols }));
+    let value = 1;
+    let top = 0, bottom = rows - 1, left = 0, right = cols - 1;
+
+    while (top <= bottom && left <= right) {
+        // 左 => 右
+        for (let i = left; i <= right; i++) {
+            arr[top][i] = value++;
+        }
+        top++;
+        // 上 => 下
+        for (let i = top; i <= bottom; i++) {
+            arr[i][right] = value++;
+        }
+        right--;
+
+        // 右 => 左
+        if (top <= bottom) {
+            for (let i = right; i >= left; i--) {
+                arr[bottom][i] = value++;
+            }
+            bottom--;
+        }
+
+        // 下 => 上
+        if (left <= right) {
+            for (let i = bottom; i >= top; i--) {
+                arr[i][left] = value++;
+            }
+            left++;
+        }
+
+    }
+
+    return arr;
+}
+
+const result2 = generateSpiralArray(6, 6);

+ 28 - 0
mysql/语法.md

@@ -30,3 +30,31 @@ select * from user
 select id,name,descript from user
 ```
 
+## 新增mysql 用户
+```mysql
+create user '用户名'@'%' identified by '密码';
+```
+#e 例子
+创建用户名为`site` 密码为`2468123`的mysql用户,  
+%表示允许用户从任何主机连接, 可以替换为ip地址等  
+localhost表示只允许本机连接
+```mysql
+CREATE USER 'site'@'%' IDENTIFIED BY '2468123';
+```
+### 授权用户
+```mysql
+grant all on 数据库名.表名 to '用户名'@'%';
+```
+#e 例子
+授权用户名为`site` 数据库名为`test` 表名为`user`的权限  
+也可以替换为 test.* 表示所有表
+```mysql
+grant all on test.user to 'site'@'%';
+```
+
+### 刷新权限
+```mysql
+flush privileges;
+```
+
+

+ 9 - 0
安卓开发/安卓开发记录.md

@@ -37,3 +37,12 @@
 随后我们再用 `item` 来表示这是单独的项,  
 随后可以接这部分的名字 `playbacks`,用以区分(也可以不进行区分,如果内容较少的话)  
 该文件可以命名为 `playback_list_item_playbacks` `.xml` 或者 `playback_list_item`
+
+## 使用技巧
+
+### 回调函数
+
+#### `#d` 实现原理 | 依赖注入
+
+通过实现接口函数的方法将对应的方法实现,  
+将对象作为参数传递进去,用于实现回调函数的效果  

+ 7 - 3
渐构/拆书/cPrimerPlus.md

@@ -1,5 +1,7 @@
 # C Primer Plus
+
 ## 转换说明
+
 ### printf 格式化原理
 
 示例代码
@@ -13,14 +15,16 @@ printf("%ld %ld %ld %ld\n", n1, n2, n3, n4);
 ```
 
 1. 在调用 printf 时 程序将传入的值放入 [栈]
-2. 不同的类型的值分配不同的 内存 
+2. 不同的类型的值分配不同的 内存  
+
 > `float` 将会被转换为 `double` 类型, 所以占据八个字节  
 
 内存空间表示,单位字节
 | 0 - 7 | 8 - 15 | 16 - 19 | 19 - 23|
 | --- | --- | --- | --- |
 | n1 | n2 | n3 | n4 |
-3. printf 函数开始根据 [转换说明] 从 [栈] 中读取对应的值
+
+1. printf 函数开始根据 [转换说明] 从 [栈] 中读取对应的值
 `%ld`说明应该读取 4字节  
 但是 n1 所占空间为 8字节,所以只能读取 n1 的前半部分
-四个`%ld`只能读取16字节, 所以 n3 与 n4 是无法被读取的
+四个`%ld`只能读取16字节, 所以 n3 与 n4 是无法被读取的