小编Moh*_*oud的帖子

Flutter - 键盘显示和隐藏导致构建调用

我最近一直在学习 Flutter 并遇到了一些奇怪的问题,当我单击 TextField 时,将显示键盘,并将build为托管和所有祖先小部件调用。

我读过当 TextField 单击时,该build方法将被调用,然后整个小部件将被重建,但我遇到的情况有点奇怪,因为在第一个打开的小部件上没有调用构建。

设想:

1 - 打开应用程序。

2 - 第一个小部件加载并打印在屏幕上:"First build called",当我点击 TextField 时,键盘会弹出,控制台上没有打印任何内容。

3 - 点击“打开第二个”,第二个小部件加载并打印在屏幕上: “第二个构建调用”,当我点击文本字段时,键盘弹出并打印:“第二个构建调用”(在步骤[1]中)没有打印!)。

4 - 点击“首先打开”,第一个小部件再次加载并打印在屏幕上:“First build called”,当我点击 TextField 时,键盘弹出并打印:“Second build called First build called”(在步骤 [1] 用于未打印任何内容的同一个小部件!)。

代码:

void main() {
  runApp(MaterialApp(home: First()));
}

class First extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    print('First build called');
    return Scaffold(
      appBar: AppBar(
        title: Text("HI Ramadan"),
      ),
      body: Column( …
Run Code Online (Sandbox Code Playgroud)

dart flutter

11
推荐指数
1
解决办法
6303
查看次数

有向图中有多少个组件?

我有以下图表:

有向图

最佳解决方案是从顶点 (3) 开始 dfs,然后我将得到一个分量,但是当我们从顶点 (1) 开始 dfs 时,则 (3) 我将得到两个分量。问题是:我想知道这个图中有多少个分量?或者以其他方式,覆盖所有图形所需的最少 dfs 数量是多少?

这样做所需的算法是什么?

graph

6
推荐指数
2
解决办法
7183
查看次数

复杂度时间 O(n) 或 O(n(n+1)/2)

循环 n 个项目(如数组)然后循环 (n-1) 然后循环 (n-2) 等等的算法的复杂性是多少 像:

Loop(int[] array) {
  for (int i=0; i<array.Length; i++) {
     //do some thing

  }
}
Main() {
   Loop({1, 2, 3, 4}); 
   Loop({1, 2, 3}); 
   Loop({1, 2}); 
   Loop({1}); 
//What the complexity of this code.
}
Run Code Online (Sandbox Code Playgroud)

前面的程序的复杂度是多少?

algorithm big-o time-complexity

1
推荐指数
2
解决办法
1万
查看次数

标签 统计

algorithm ×1

big-o ×1

dart ×1

flutter ×1

graph ×1

time-complexity ×1