Exemple #1
0
        public IHttpActionResult BatchAccountNoKeySelect()
        {
            BypassService bypassService = new BypassService();
            string        a             = bypassService.ReturnBypassSelectTotalAmountNoKey();

            return(Ok(a));
        }
Exemple #2
0
        public IHttpActionResult SetbatchAccountNoKey()
        {
            BypassService bypassService = new BypassService();
            string        a             = bypassService.ReturnBypassUpdateAmountNoKey();

            return(Ok(a));
        }
Exemple #3
0
        private void PerformTests()
        {
            var diikstraAvg = 0;
            var astarAvg    = 0;
            int sumD        = 0;
            int sumA        = 0;

            for (int i = 0; i < TestsNum; i++)
            {
                var vertices = VertexFactory.GetVertices(TestVertexNum);
                var matrix   = VertexFactory.GetRandomMatrix(TestVertexNum, 500, vertices);

                sumD += BypassService.DijkstraBypass(vertices, matrix, StartTestVertex);
                foreach (var node in vertices)
                {
                    node.VStatus  = VStatEnum.NoViewed;
                    node.Distance = 10000;
                    node.ParentId = -1;
                }
                sumA += BypassService.AStarBypass(vertices, matrix, StartTestVertex, FinishTestVertex);
            }

            diikstraAvg = sumD / TestsNum;
            astarAvg    = sumA / TestsNum;
            RelaxationScore.Add(new RelaxationStats(TestVertexNum, diikstraAvg, astarAvg));
        }
Exemple #4
0
        private void PerformBypass()
        {
            foreach (var node in VertexNodes)
            {
                node.VStatus  = VStatEnum.NoViewed;
                node.Distance = 10000;
                node.ParentId = -1;
            }

            bool result = true;

            switch (SelectedBypass)
            {
            case 0:
                result = BypassService.DepthBypass(VertexNodes, MatrixAdjacency, BypassCollection);
                break;

            case 1:
                result = BypassService.WidthBypass(VertexNodes, MatrixAdjacency, BypassCollection);
                break;

            case 2:
                result = BypassService.DijkstraBypass(VertexNodes, MatrixAdjacency, BypassCollection, StartBVertex);
                break;

            case 3:
                result = BypassService.AStarBypass(VertexNodes, MatrixAdjacency, BypassCollection, StartBVertex, FinishBVertex);
                break;
            }

            if (!result)
            {
                new ModernDialog()
                {
                    Title   = "Обход графа",
                    Content = "Не удалось дойти до целевой вершины графа (нельзя обойти все вершины)"
                }.ShowDialog();
            }
        }