From ca9ca7b35777c78564a0a6d4f1a4cef76766afb3 Mon Sep 17 00:00:00 2001 From: voic00 <voic00@mi.fu-berlin.de> Date: Thu, 13 Jun 2024 12:41:11 +0200 Subject: [PATCH] dinge ins archiv verschoben --- src/{ => archive}/backupmain.py | 0 ...e_einzeln_constraint\303\274berpr\303\274fung.log" | 0 src/{ => archive}/fortesting.py | 0 src/{ => archive}/len_cycles.log | 0 src/{ => archive}/len_cycles2.log | 0 src/{ => archive}/main.py | 0 src/{ => archive}/main_iterative.py | 0 .../main_iterative_approach_for_zykel.py | 0 src/{ => archive}/main_iterative_opt.py | 0 src/{ => archive}/main_iterative_opt2.py | 0 src/{ => archive}/main_iterative_opt3.py | 0 .../main_iterative_opt_cycle_einzeln_speicher.py | 0 src/{ => archive}/main_iterative_opt_grad.py | 0 src/{ => archive}/main_zykel.py | 0 src/{ => archive}/main_zykel_berechnung.py | 0 src/{ => archive}/prob.lp | 0 src/{ => archive}/solver_knoten_grad_1.py | 0 .../solver_knoten_grad_1_einsortieren.py | 0 src/{ => archive}/solver_opt.py | 0 src/{ => archive}/solver_opt2.py | 0 src/{ => archive}/solver_opt3.py | 0 src/solver_knoten_grad_1_einsortieren_opt.py | 11 +++++++---- 22 files changed, 7 insertions(+), 4 deletions(-) rename src/{ => archive}/backupmain.py (100%) rename "src/cycle_einzeln_constraint\303\274berpr\303\274fung.log" => "src/archive/cycle_einzeln_constraint\303\274berpr\303\274fung.log" (100%) rename src/{ => archive}/fortesting.py (100%) rename src/{ => archive}/len_cycles.log (100%) rename src/{ => archive}/len_cycles2.log (100%) rename src/{ => archive}/main.py (100%) rename src/{ => archive}/main_iterative.py (100%) rename src/{ => archive}/main_iterative_approach_for_zykel.py (100%) rename src/{ => archive}/main_iterative_opt.py (100%) rename src/{ => archive}/main_iterative_opt2.py (100%) rename src/{ => archive}/main_iterative_opt3.py (100%) rename src/{ => archive}/main_iterative_opt_cycle_einzeln_speicher.py (100%) rename src/{ => archive}/main_iterative_opt_grad.py (100%) rename src/{ => archive}/main_zykel.py (100%) rename src/{ => archive}/main_zykel_berechnung.py (100%) rename src/{ => archive}/prob.lp (100%) rename src/{ => archive}/solver_knoten_grad_1.py (100%) rename src/{ => archive}/solver_knoten_grad_1_einsortieren.py (100%) rename src/{ => archive}/solver_opt.py (100%) rename src/{ => archive}/solver_opt2.py (100%) rename src/{ => archive}/solver_opt3.py (100%) diff --git a/src/backupmain.py b/src/archive/backupmain.py similarity index 100% rename from src/backupmain.py rename to src/archive/backupmain.py diff --git "a/src/cycle_einzeln_constraint\303\274berpr\303\274fung.log" "b/src/archive/cycle_einzeln_constraint\303\274berpr\303\274fung.log" similarity index 100% rename from "src/cycle_einzeln_constraint\303\274berpr\303\274fung.log" rename to "src/archive/cycle_einzeln_constraint\303\274berpr\303\274fung.log" diff --git a/src/fortesting.py b/src/archive/fortesting.py similarity index 100% rename from src/fortesting.py rename to src/archive/fortesting.py diff --git a/src/len_cycles.log b/src/archive/len_cycles.log similarity index 100% rename from src/len_cycles.log rename to src/archive/len_cycles.log diff --git a/src/len_cycles2.log b/src/archive/len_cycles2.log similarity index 100% rename from src/len_cycles2.log rename to src/archive/len_cycles2.log diff --git a/src/main.py b/src/archive/main.py similarity index 100% rename from src/main.py rename to src/archive/main.py diff --git a/src/main_iterative.py b/src/archive/main_iterative.py similarity index 100% rename from src/main_iterative.py rename to src/archive/main_iterative.py diff --git a/src/main_iterative_approach_for_zykel.py b/src/archive/main_iterative_approach_for_zykel.py similarity index 100% rename from src/main_iterative_approach_for_zykel.py rename to src/archive/main_iterative_approach_for_zykel.py diff --git a/src/main_iterative_opt.py b/src/archive/main_iterative_opt.py similarity index 100% rename from src/main_iterative_opt.py rename to src/archive/main_iterative_opt.py diff --git a/src/main_iterative_opt2.py b/src/archive/main_iterative_opt2.py similarity index 100% rename from src/main_iterative_opt2.py rename to src/archive/main_iterative_opt2.py diff --git a/src/main_iterative_opt3.py b/src/archive/main_iterative_opt3.py similarity index 100% rename from src/main_iterative_opt3.py rename to src/archive/main_iterative_opt3.py diff --git a/src/main_iterative_opt_cycle_einzeln_speicher.py b/src/archive/main_iterative_opt_cycle_einzeln_speicher.py similarity index 100% rename from src/main_iterative_opt_cycle_einzeln_speicher.py rename to src/archive/main_iterative_opt_cycle_einzeln_speicher.py diff --git a/src/main_iterative_opt_grad.py b/src/archive/main_iterative_opt_grad.py similarity index 100% rename from src/main_iterative_opt_grad.py rename to src/archive/main_iterative_opt_grad.py diff --git a/src/main_zykel.py b/src/archive/main_zykel.py similarity index 100% rename from src/main_zykel.py rename to src/archive/main_zykel.py diff --git a/src/main_zykel_berechnung.py b/src/archive/main_zykel_berechnung.py similarity index 100% rename from src/main_zykel_berechnung.py rename to src/archive/main_zykel_berechnung.py diff --git a/src/prob.lp b/src/archive/prob.lp similarity index 100% rename from src/prob.lp rename to src/archive/prob.lp diff --git a/src/solver_knoten_grad_1.py b/src/archive/solver_knoten_grad_1.py similarity index 100% rename from src/solver_knoten_grad_1.py rename to src/archive/solver_knoten_grad_1.py diff --git a/src/solver_knoten_grad_1_einsortieren.py b/src/archive/solver_knoten_grad_1_einsortieren.py similarity index 100% rename from src/solver_knoten_grad_1_einsortieren.py rename to src/archive/solver_knoten_grad_1_einsortieren.py diff --git a/src/solver_opt.py b/src/archive/solver_opt.py similarity index 100% rename from src/solver_opt.py rename to src/archive/solver_opt.py diff --git a/src/solver_opt2.py b/src/archive/solver_opt2.py similarity index 100% rename from src/solver_opt2.py rename to src/archive/solver_opt2.py diff --git a/src/solver_opt3.py b/src/archive/solver_opt3.py similarity index 100% rename from src/solver_opt3.py rename to src/archive/solver_opt3.py diff --git a/src/solver_knoten_grad_1_einsortieren_opt.py b/src/solver_knoten_grad_1_einsortieren_opt.py index d674171..7bd967e 100644 --- a/src/solver_knoten_grad_1_einsortieren_opt.py +++ b/src/solver_knoten_grad_1_einsortieren_opt.py @@ -108,16 +108,19 @@ def solve_bipartite_minimization(input_lines): edges.append((x, y)) degrees_b[y] += 1 neighbors_a[y].append(x) - #print(edges) - #print(neighbors_a) + # Identify and sort nodes in partition B with degree 1 degree_one_nodes = [node for node, degree in degrees_b.items() if degree == 1] - #print(degree_one_nodes) degree_one_nodes.sort(key=lambda b: neighbors_a[b][0]) - #print(degree_one_nodes) + # Remove degree one nodes from nodes list all_nodes = set(range(n0 + 1, n0 + n1 + 1)) remaining_nodes = [node for node in all_nodes if node not in degree_one_nodes] + + # for all remaining nodes: sort all neighbors so the leftest neighbor in A of node b is at neighbors_a[b][0] and the + # rightest neighbor in A is at neighbors_A[b][-1] + for b in remaining_nodes: + neighbors_a[b].sort(key=lambda a: a) if len(remaining_nodes)==0: return degree_one_nodes -- GitLab